概述
一.创建数据库。
1.创建test数据库,字符编码采用utf8mb4 执行语句:CREATE TABLE test CHARSET='utf8mb4';
二,创建学生表
1.创建student表,包含id、name、gender、age,插入至少5条记录。
三,创建日志表
1.创建t-log表,执行语句:CREATE TABLE log (id INT PRIMARY KEY AUTO_INCREMENT,time TIMESTAMP,operation VARCHAR(10),detail VARCHAR(50));包含id、time、operation、detail。
四、创建触发器
1、创建插入触发器
- 针对student创建插入触发器 trigger_insert 执行语句:CREATE TRIGGER trigger_insert
AFTER INSERT ON student FOR EACH ROW
INSERT INTO log (time,operation, detail)
VALUES (NOW(),'INSERT',CONCAT('新记录: ', NEW.id, NEW.gender, NEW.age));
2.创建更新触发器
- 针对student创建插入触发器 trigger_update 执行命令:CREATE TRIGGER trigger_update
AFTER UPDATE ON student FOR EACH ROW
INSERT INTO log (time,operation, detail)
VALUES (NOW(),'UPDATE',CONCAT('(',
OLD.id, OLD.name, OLD.gender, OLD.age,')',
'->','(',NEW.id, NEW.name, NEW.gender, NEW.age, ')'));
3.创建删除触发器
针对student创建插入触发器 trigger_delete 执行命令:CREATE TRIGGER trigger_delete
AFTER DELETE ON student FOR EACH ROW
INSERT INTO log (time,operation, detail)
VALUES (NOW(),'DELETE',CONCAT('旧记录: ',OLD.id,OLD.name, OLD.gender,OLD.age));
(五) 查看触发器
1、查看创建的全部触发器
执行命令:SHOW TRIGGERS;
2.创建触发器的创建语句
(1)查看插入触发器的语句 执行命令:SHOW CREATE TRIGGER trigger_insert;
3. 查看删除触发器的创建语句
执行命令:SHOW CREATE TRIGGER trigger_delete;
(六) 测试触发器
1、测试插入触发器
插入一条新记录,执行语句:insert into student(name, gender, age) VALUES('方小二','女',12);
为了测试插入触发器是否生效,我们只需要检查日志表
2、 测试更新触发器
更新第六条记录 执行语句:
为了测试插入触发器是否生效,我们只需要检查日志表
(1)删除插入触发器
(2).删除更新触发器
(3).删除--触发器
此时,执行命令:SHOW TRIGGERS;
最后
以上就是欣慰万宝路为你收集整理的在数据库中创建触发器一.创建数据库。二,创建学生表三,创建日志表四、创建触发器(五) 查看触发器(六) 测试触发器的全部内容,希望文章能够帮你解决在数据库中创建触发器一.创建数据库。二,创建学生表三,创建日志表四、创建触发器(五) 查看触发器(六) 测试触发器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复