在BEFORE
INSERT
我试图检查值。如果一列是空白的,我想加载默认值 - 基于单独表中的一行。我虽然像下面的代码这样的东西可以满足我的需要,但我遇到了一个错误。
不允许从触发器返回结果集 执行已停止!
这是我的 SQL,我假设它在抱怨我的 select 语句。
delimiter |
CREATE TRIGGER `trg_Sites_ID` BEFORE INSERT ON Sites
FOR EACH ROW
BEGIN
SELECT @CA:=Palette0ColorA, @CB:=Palette0ColorB FROM Themes WHERE ID=NEW.ThemeID;
SET NEW.ID = UUID();
SET NEW.ColorA = IF(NEW.ColorA = '', @CA, NEW.ColorA);
SET NEW.ColorB = IF(NEW.ColorB = '', @CB, NEW.ColorB);
END
|
delimiter ;