我已经设置了 liquibase。我目前有 4-5 个要加载的触发器,每个触发器都存储在一个单独的文件中。所有的触发器都在不同的表上。但是我不断收到此错误:
严重的 2013 年 9 月 17 日下午 12:05:liquibase:更改集迁移/09-16-2013-16-10.sql::129 失败。错误:执行 SQL DELIMITER $$ 时出错
DELIMITER $$
CREATE TRIGGER `UPDATE_tableA` BEFORE UPDATE on `tableA`
FOR EACH ROW BEGIN
IF (OLD.ColumnA = NEW.ColumnA) and
((OLD.ColumnB is null and NEW.ColumnB is null) or (OLD.ColumnB = NEW.ColumnB)) and
((OLD.ColumnB is null and NEW.ColumnB is null) or (OLD.ColumnB = NEW.ColumnB)) and
((OLD.ColumnC is null and NEW.ColumnC is null) or (OLD.ColumnC = NEW.ColumnC))
THEN
SET NEW.ColumnA = 0;
SET NEW.ColumnB = NULL;
SET NEW.ColumnB = NULL;
SET NEW.ColumnC = NULL;
END IF;
END$$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER `UPDATE_tableB` BEFORE UPDATE on `tableB`
FOR EACH ROW BEGIN
IF (OLD.ColumnA = NEW.ColumnA) and
((OLD.ColumnB is null and NEW.ColumnB is null) or (OLD.ColumnB = NEW.ColumnB)) and
((OLD.ColumnB is null and NEW.ColumnB is null) or (OLD.ColumnB = NEW.ColumnB)) and
((OLD.ColumnC is null and NEW.ColumnC is null) or (OLD.ColumnC = NEW.ColumnC))
THEN
SET NEW.ColumnA = 0;
SET NEW.ColumnB = NULL;
SET NEW.ColumnB = NULL;
SET NEW.ColumnC = NULL;
END IF;
END$$
DELIMITER ;