MySQL 如果触发器不存在就创建?
MySQL Create Trigger if no exists?
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
union all
select "tv_client2" as trigger_schema, "public_id" as trigger_name
from information_schema.triggers;
你的问题有点难以理解,所以我相信这就是你要问的。如果您已经有一个现有的 public_id 那么代码应该是
SELECT trigger_schema, trigger_name from information_schema.triggers
union all
select "tv_client2" as trigger_schema, trigger_name
from information_schema.triggers;
查询 SELECT trigger_schema, trigger_name from information_schema.triggers;
显示数据库名称和触发器名称。在您的情况下,public_id
触发器已在 tv_client1
数据库中创建。如果您希望 tv_client2
数据库中存在相同的触发器,那么您也可以对 tv_client2
数据库执行相同的 CREATE TRIGGER public_id ...
代码,然后相同的代码将反映在 information_schema.triggers
中.
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
union all
select "tv_client2" as trigger_schema, "public_id" as trigger_name
from information_schema.triggers;
你的问题有点难以理解,所以我相信这就是你要问的。如果您已经有一个现有的 public_id 那么代码应该是
SELECT trigger_schema, trigger_name from information_schema.triggers
union all
select "tv_client2" as trigger_schema, trigger_name
from information_schema.triggers;
查询 SELECT trigger_schema, trigger_name from information_schema.triggers;
显示数据库名称和触发器名称。在您的情况下,public_id
触发器已在 tv_client1
数据库中创建。如果您希望 tv_client2
数据库中存在相同的触发器,那么您也可以对 tv_client2
数据库执行相同的 CREATE TRIGGER public_id ...
代码,然后相同的代码将反映在 information_schema.triggers
中.