您可能知道,没有修改MySQL触发器的语法。
为此,您需要执行DROP TRIGGER,然后使用新定义重新创建它。
考虑到以下因素,这样做的最佳方式是什么?
答案 0 :(得分:0)
在我发布之前进行测试时,我忽略了我正在获取的LOCK类型,它是READ。
所以似乎使用 WRITE 锁来完成工作:
delimiter $$
LOCK TABLES table1 WRITE $$
DROP TRIGGER IF EXISTS after_insert_on_table1 $$
CREATE TRIGGER after_insert_on_table1 AFTER INSERT ON table1
FOR EACH ROW
BEGIN
...
END
$$
delimiter ;
所以我的建议是在更新/修改触发器时始终使用此序列。