我写了这段代码:
CREATE TRIGGER testT BEFORE INSERT ON test3
FOR EACH ROW
IF NEW.a> NEW.b
THEN NEW.a=0
在mysql和表test3(a,b)中
我想要的是如果用户在测试3中插入a和b并且a> b然后a变为0我应该如何写这个?因为目前这段代码不起作用并且我得到MySQL说:
。#1064 - 您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第2行的“.a = 0”附近使用正确的语法
这不是触发器的有效语法,你忘了使用SET
。试试这个:
CREATE TRIGGER testT
BEFORE INSERT ON test3
FOR EACH ROW
IF NEW.a> NEW.b
THEN SET NEW.a=0;
END IF;