MySQL如果不存在则创建触发器?

标签 mysql triggers database-migration mybatis

SELECT trigger_schema, trigger_name from information_schema.triggers;

+------------------------+------------------+
| trigger_schema         | trigger_name     |
+------------------------+------------------+
| tv_client1             | public_id        |
+------------------------+------------------+

我想为 tv_client2 添加现有触发器 public_id。 如果触发器不存在,如何创建?

最终结果应该是:

SELECT trigger_schema, trigger_name from information_schema.triggers;

+------------------------+------------------+
| trigger_schema         | trigger_name     |
+------------------------+------------------+
| tv_client1             | public_id        |
+------------------------+------------------+
| tv_client2             | public_id        |
+------------------------+------------------+

最佳答案

查询SELECT trigger_schema, trigger_name from information_schema.triggers;显示数据库名称和触发器名称。在您的情况下,public_id 触发器已在 tv_client1 数据库中创建。如果您希望 tv_client2 数据库中存在相同的触发器,则可以针对 tv_client2 数据库执行相同的 CREATE TRIGGER public_id ... 代码,如下所示好吧,同样的内容将反射(reflect)在 information_schema.triggers 中。

关于MySQL如果不存在则创建触发器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31411468/

相关文章:

mysql - 有没有办法找出MySql中现有数据的编码

python - 向现有模型添加新字段 - django.db.utils.ProgrammingError : column {field} does not exist

mysql - 仅当列的所有元素都在另一个表中时才匹配

sql-server - 删除表上的 SQL Server DDL 触发器

wpf - IsMouseOver 未触发

mysql - SQL触发器不工作

mysql - 整数格式的mysql日期迁移

mysql - 多个 INSERT sql 查询,错误提示我的值不是字段

php - html表格一页可以显示多少行?

mysql - 阻止 Percona 版本的 MySQL 在启动时启动