要查看MySQL中的触发器,可以使用以下命令:
要查看MySQL中的触发器,可以使用以下命令:
SHOW TRIGGERS [FROM database_name] [LIKE 'pattern'];
其中,database_name 为要查看的数据库名称(可选),
pattern
为要匹配的触发器名称(可选)。
此外,也可以使用以下命令查看指定触发器的详细信息:
SHOW CREATE TRIGGER trigger_name;
其中,trigger_name
为要查看详细信息的触发器名称。
下面以实例说明:
1. 创建一个测试数据库
CREATE DATABASE test_db;
USE test_db;
2. 创建一个测试表
CREATE TABLE users (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
email VARCHAR(50) NOT NULL,
age INT NOT NULL,
PRIMARY KEY (id)
);
3. 创建一个测试触发器
CREATE TRIGGER insert_user
AFTER INSERT ON users
FOR EACH ROW
BEGIN
INSERT INTO user_log (user_id, action) VALUES (NEW.id, 'inserted');
END;
此触发器会在 users
表中插入数据后,向 user_log
表中插入一条记录。
4. 查看该数据库中所有触发器
SHOW TRIGGERS FROM test_db;
输出结果如下:
Trigger | Event | Table | Statement | Timing | Created | sql_mode |
---|---|---|---|---|---|---|
insert_user | INSERT | users | INSERT INTO user_log (user_id, action) VALUES (NEW.id, 'inserted') | AFTER | 2022-05-19 09:21:26 |
该结果表明,在 test_db
数据库中,只有一个触发器 insert_user
,它是在 users
表的 INSERT
操作之后被触发。
5. 查看该触发器的详细信息
SHOW CREATE TRIGGER insert_user;
输出结果如下:
Trigger | sql_mode | Create Trigger |
---|---|---|
insert_user | CREATE DEFINER=code>root@insert_user AFTER INSERT ON users FOR EACH ROW BEGIN INSERT INTO user_log (user_id, action) VALUES (NEW.id, 'inserted'); END |
该结果表明,该触发器的名称是 insert_user
,它是在 users
表的 INSERT
操作之后被触发,对应的触发器操作为:
INSERT INTO user_log (user_id, action) VALUES (NEW.id, 'inserted');
织梦狗教程
本文标题为:MySQL查看触发器方法详解


基础教程推荐
猜你喜欢
- Redis偶发连接大发源码出售失败案例分析 2023-09-12
- redis安装,启动及停止 2023-09-12
- sql语句LEFT JOIN拼接表详解 2023-07-29
- 亲手教你SQLyog12.08安装详细教程 2023-07-26
- asp经典入门教程 在ASP中使用SQL 语句 2024-01-10
- SVN报错:Error Updating changes:svn:E155037的解决方案 2023-12-04
- 关于mongoDB数据库添加账号的问题 2023-07-16
- MongoDB卸载安装的详细安装教程 2023-07-16
- PostgreSQL出现死锁该如何解决 2023-07-21
- oracle数据库排序后如何获取第一条数据 2023-07-24