SHOW TRIGGERS
[{FROM | IN} db_name]
[LIKE 'pattern' | WHERE expr]
显示触发器
列出了当前数据库中定义的触发器(默认数据库,除非指定了 FROM
子句)。该语句仅返回您拥有 TRIGGER
权限的数据库和表的结果。如果存在 LIKE
子句,表示要匹配的表名(不是触发器名),并导致语句显示这些表的触发器。 WHERE
子句可以用于使用更一般的条件选择行,如 第 28.8 节,“SHOW 语句扩展” 中所讨论的那样。
对于在 第 27.3 节,“使用触发器” 中定义的 ins_sum
触发器,显示触发器
的输出如下所示:
mysql> SHOW TRIGGERS LIKE 'acc%'\G
*************************** 1. row ***************************
Trigger: ins_sum
Event: INSERT
Table: account
Statement: SET @sum = @sum + NEW.amount
Timing: BEFORE
Created: 2018-08-08 10:10:12.61
sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,
NO_ZERO_IN_DATE,NO_ZERO_DATE,
ERROR_FOR_DIVISION_BY_ZERO,
NO_ENGINE_SUBSTITUTION
Definer: me@localhost
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
Database Collation: utf8mb4_0900_ai_ci
显示触发器
输出具有以下列:
-
触发器
触发器的名称。
-
事件
触发器事件。这是关联表上的操作类型,触发器激活时执行。该值是
INSERT
(插入了一行),DELETE
(删除了一行)或UPDATE
(修改了一行)。 -
表
触发器所关联的表。
-
语句
触发器体,即触发器激活时执行的语句。
-
时机
触发器激活的时机。该值是
BEFORE
或AFTER
。 -
创建时间
触发器创建的日期和时间。这是一个
TIMESTAMP(2)
值(以百分之一秒为小数部分)用于触发器。 -
sql_mode
触发器创建时的 SQL 模式,以及触发器执行时的模式。有关允许的值,请参阅 第 7.1.11 节,“服务器 SQL 模式”。
-
定义者
创建触发器的用户账户,以
'
格式。user_name
'@'host_name
' -
character_set_client
触发器创建时的会话值
character_set_client
系统变量。 -
collation_connection
触发器创建时的会话值
collation_connection
系统变量。 -
数据库排序规则
与触发器关联的数据库的排序规则。
触发器信息也可以从 INFORMATION_SCHEMA
TRIGGERS
表中获取。请参阅 第 28.3.45 节,“INFORMATION_SCHEMA TRIGGERS 表”。