我正在编写一个脚本来在MySQL中的表上创建触发器,但触发器可能已经存在。
这是我需要担心的事情,还是创建触发器会覆盖任何具有相同名称的触发器?
我考虑在DROP TRIGGER IF EXISTS
之前使用CREATE TRIGGER...
语句。这会有任何性能损失或其他缺点吗?
答案 0 :(得分:4)
使用DROP TRIGGER IF EXISTS正是这样做的方法。唯一的缺点是,如果你不知道一个触发器,并且完全同名(如果遵循命名约定可能),那么你将失去其背后的定义和功能。
会创建触发器覆盖任何具有相同名称的触发器吗?
不,实际上它会因错误而失败。