mysql - 只有在 MySQL 上不存在时才创建触发器

标签 mysql sql triggers

我正在编写脚本以在 MySQL 中的表上创建触发器,但触发器可能已经存在。

这是我需要担心的事情,还是创建触发器会覆盖任何同名触发器?

我考虑过在 CREATE TRIGGER... 之前使用 DROP TRIGGER IF EXISTS 语句。这会带来任何性能损失或其他不利影响吗?

最佳答案

使用 DROP TRIGGER IF EXISTS 正是做到这一点的方法。唯一的缺点是,如果您不知道触发器,并且它具有完全相同的名称(如果遵循命名约定则可能),那么您实际上会失去其背后的定义和功能。

will creating the trigger overwrite any trigger with the same name?

不,实际上它会因错误而失败。

关于mysql - 只有在 MySQL 上不存在时才创建触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5543549/

相关文章:

使用 Min() 的 SQL

javascript - onclick 触发调整大小,highcharts

PHP 将数组传递给 PDO bindParam

mysql - 导入旧的mysql数据文件夹

mysql - Alter分区表有6000万行数据性能问题

.net - 使用 LINQ to SQL,其中数据库表可以有额外的列

SQLite 查询, 'LIKE'

mysql - 使用 C API 高效创建非常大的 mysql INSERT 查询

mysql - 记录更改值时选择

wpf - 通过绑定(bind)值选择控件样式