ITEEDU

13.5.4.20. SHOW TRIGGERS语法

SHOW TRIGGERS [FROM db_name] [LIKE expr]

SHOW TRIGGERS列出了目前被MySQL服务器定义的触发程序。

对于在21.3节,“使用触发程序”中定义的触发程序ins_sum,本语句的输出显示如下:

mysql> SHOW TRIGGERS LIKE 'acc%';
+---------+--------+---------+-------------------------------+--------+---------+
| Trigger | Event  | Table   | Statement                     | Timing | Created |
+---------+--------+---------+-------------------------------+--------+---------+
| ins_sum | INSERT | account |  SET @sum = @sum + NEW.amount | BEFORE | NULL    |
+---------+--------+---------+-------------------------------+--------+---------+

注释:当使用一个含有SHOW TRIGGERS的LIKE子句时,待匹配的表达式(expr)会与触发程序定义时所在的表的名称相比较,而不与触发程序的名称相比较:

mysql> SHOW TRIGGERS LIKE 'ins%';
Empty set (0.01 sec)

对本语句输出中的各列的简要解释如下:

·         Trigger: 触发程序的名称。

·         Event: 调用触发程序的时间。必须为'INSERT', 'UPDATE'或 'DELETE'.之一。

·         Table: 触发程序定义时对应的表。

·         Statement: 当触发程序被调用时执行的语句。这与在INFORMATION_SCHEMA.TRIGGERS的ACTION_STATEMENT列中显示的文本一样。

·         Timing: 'BEFORE'或'AFTER'两个值之一。

·         Created: 目前,本列的值为NULL。

为了执行SHOW TRIGGERS,您必须拥有SUPER权限。

同时也见23.1.16节,“INFORMATION_SCHEMA TRIGGERS表”