Mysql触发器

edge://flags/#unsafely-treat-insecure-origin-as-

修改的情况

DROP TRIGGER IF EXISTS a1; //如果有这个触发器就删除当前触发器 CREATE TRIGGER a1 //设置触发器的名字 AFTER INSERT ON namestudent //设置是哪个表使用的触发器比如这个表的名字是namestudent 和设置是insert 还是update 才触发 FOR EACH ROW //表示每插入一行都会触发一次 BEGIN //开始 INSERT INTO log (name, date, text) VALUES (NEW.name, NOW(), "插入操作"); //如果name表被插入之后触发给log日志表也进行一个插入操作 new.name 获取namestudent表中的name属性 (也就是触发器的表中name属性) NOW() 获取系统时间 最后一个是自定义 END; //结束

除了FOR EACH ROW 还有 AFTER INSERT 和 BEFORE INSERT用于指定触发器的执行时间,

AFTER INSERT 表示在数据被插入后执行触发器

BEFORE INSERT 则表示在数据被插入之前执行触发器。此外,还有更多用于触发器的操作指令,

如DELETE、UPDATE、AFTER DELETE和BEFORE UPDATE等。

删除的情况

DROP TRIGGER IF EXISTS a1; CREATE TRIGGER a1 BEFORE DELETE ON name // 在删除之前触发 FOR EACH ROW BEGIN INSERT INTO log (name, date, text,user) VALUES (OLD.name, NOW(), "删除操作",SYSTEM_USER()); END;

1. CURRENT_TIMESTAMP():获取当前时间戳 2. DATABASE():获取当前操作的数据库名 3. CONNECTION_ID():获取当前连接的ID 4. LAST_INSERT_ID():获取上一条插入语句生成的自增ID 5. VERSION():获取当前MySQL版本号 6. SLEEP():使当前连接休眠一段时间 7. NOW():获取当前日期时间 8. RAND():生成一个随机数 9. SYSTEM_USER():获取当前操作系统用户 10. FOUND_ROWS():获取上一条SELECT语句返回的记录数 4. LAST_INSERT_ID():获取最后一次插入操作生成的自增ID值

添加修改删除代码

DROP TRIGGER IF EXISTS insert_table_article; CREATE TRIGGER insert_table_article AFTER INSERT ON article FOR EACH ROW BEGIN INSERT INTO table_log (user, operate, text,`table`,date) VALUES (USER(),"插入一篇文章",NEW.title,"文章", NOW()); END; DROP TRIGGER IF EXISTS delete_table_article; CREATE TRIGGER delete_table_article BEFORE DELETE ON article FOR EACH ROW BEGIN INSERT INTO table_log (user, operate, text,`table`,date) VALUES (USER(),"删除一篇文章",OLD.title,"文章", NOW()); END; DROP TRIGGER IF EXISTS update_table_article; CREATE TRIGGER update_table_article BEFORE UPDATE ON article FOR EACH ROW BEGIN INSERT INTO table_log (user, operate, text,`table`,date) VALUES (USER(),"修改一篇文章",CONCAT( OLD.title,' 状态:',OLD.state),"文章", NOW()); END;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

游迹AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值