原文链接:http://xiezs.uicp.top/archives/2020032002
触发器创建语法
create trigger 触发器名
before/after insert/delete/update on 表名
for each row
begin
SQL语句
end;
使用过程中出现的问题(ERROR 1604(420000): You have an error in your SQL syntax;……)
在MySQL终端中,使用上述语法有时会报错,因为SQL语句末尾需要加分号; ,但是终端中一旦出现分号,系统就认为触发器创建结束,导致出错,所以需要在使用前修改系统默认的结束标记,例如//
解决方法:使用自定义终止符
delimiter //
create trigger 触发器名
before/after insert/delete/update on 表名
for each row
begin
SQL语句
end//
这样在SQL语句中的分号就不会认为是触发器创建完毕,只有遇到指定结束符才完成触发器的创建。
原文链接:http://xiezs.uicp.top/archives/2020032002