跳到主要内容

SHOW CREATE TRIGGER

此语句显示创建触发器的 CREATE TRIGGER 语句。

SHOW CREATE TRIGGER 语句的语法如下:

SHOW CREATE TRIGGER trigger_name;

此语句要求与触发器关联的表具有 TRIGGER 权限。

SHOW CREATE TRIGGER 输出如下信息:

  • Trigger:触发器名称。

  • sql_mode:执行触发器时生效的 SQL 模式。

  • SQL Original Statement:定义触发器的 CREATE TRIGGER 语句。

  • character_set_client:创建触发器时 character_set_client 系统变量在当前会话的值。

  • collation_connection:创建触发器时 collation_connection 系统变量在当前会话的值。

  • Database Collation:与触发器关联的数据库的排序规则。

  • Created:创建触发器的日期和时间。值的类型为 TIMESTAMP(2)(分数部分为百分之一秒)。

触发器信息也可从 INFORMATION_SCHEMA TRIGGERS 表中获得。详细信息请参见 INFORMATION_SCHEMA TRIGGERS

SHOW CREATE TRIGGER 语句的示例如下:

SHOW CREATE TRIGGER test_trg;
+--------------+----------+-----------------+-----------------------+----------------------+--------------------+
| Trigger | sql_mode | SQL Original Statement | character_set_client | collation_connection | Database Collation |
+--------------+----------+-----------------+-----------------------+----------------------+--------------------+
| test_trg | STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE |CREATE TRIGGER test_trg BEFORE UPDATE ON test FOR EACH ROW BEGIN IF NEW.user_num < 1 THENSET NEW.user_num = 1; ELSEIF NEW.user_num > 45 THEN SET NEW.user_num= 45; END IF;END | utf8mb4 | utf8mb4 | utf8mb4 |
+--------------+----------+-----------------+-----------------------+----------------------+--------------------+--------+
1 row in set