mysql触发器
2018-03-27 10:23
260 查看
1.什么是触发器
需求:出于审计目的,当有人在往temp_user 插入一条记录时,把插入的uid,uname,插入动作和操作时间记录下来。delimiter $$
create trigger tr_user_insert after insert on temp_user
for each row
begin
insert into temp_oplog(uid,uname,action,optime)
values(new.uid,new.uname,'insert',NOW());
end;
$$
delimiter ;1.创建触发器使用 create trigger 触发器名称
2.什么时候触发? after insert on temp_user,除了after还有before,是在对表操作之前(before)或之后(after)触发动作的。
3.对什么操作时事件触发? after insert on temp_user, 操作事件包括 insert,update,delete
4.对什么表触发? after insert on temp_user
5.影响的范围? for each row
6.NEW 代表 插入 更新 删除之后的字段值,OLD 代表插入 更新 删除之前的字段值
触发器:与函数、存储过程一样,触发器是一种对象,它能根据对表的操作事件,触发一些动作,这些动作可以是insert,update,delete等修改操作。
2.生产环境触发器实例
需求:出于审计目的,当删除users表时,记录删除前应该记录的主要字段值create trigger tr_user_delete before delete on temp_user
for each row
BEGIN
insert into temp_oplog(uid,uname,action,optime,old_value)
values(OLD.uid,OLD.uname,'delete',NOW(),OLD.regtime);
END
需求:出于审计目的,当有人在往temp_user 插入一条记录时,把插入的uid,uname,插入动作和操作时间记录下来。delimiter $$
create trigger tr_user_insert after insert on temp_user
for each row
begin
insert into temp_oplog(uid,uname,action,optime)
values(new.uid,new.uname,'insert',NOW());
end;
$$
delimiter ;1.创建触发器使用 create trigger 触发器名称
2.什么时候触发? after insert on temp_user,除了after还有before,是在对表操作之前(before)或之后(after)触发动作的。
3.对什么操作时事件触发? after insert on temp_user, 操作事件包括 insert,update,delete
4.对什么表触发? after insert on temp_user
5.影响的范围? for each row
6.NEW 代表 插入 更新 删除之后的字段值,OLD 代表插入 更新 删除之前的字段值
触发器:与函数、存储过程一样,触发器是一种对象,它能根据对表的操作事件,触发一些动作,这些动作可以是insert,update,delete等修改操作。
2.生产环境触发器实例
需求:出于审计目的,当删除users表时,记录删除前应该记录的主要字段值create trigger tr_user_delete before delete on temp_user
for each row
BEGIN
insert into temp_oplog(uid,uname,action,optime,old_value)
values(OLD.uid,OLD.uname,'delete',NOW(),OLD.regtime);
END
相关文章推荐
- MySQL(十二)游标和触发器
- mysql 触发器
- MySQL 触发器简单实例
- mysql 触发器
- Day4 MySql触发器视图索引以及设计优化
- mysql触发器笔记
- mysql 触发器采坑记录(mysql 触发器采坑记录 由于不了解mysql创建触发器要记录创建者IP,导致更改创建者IP后,触发器不可执行。 当创建触发器(视图、存储过程、函数)时,如果没有)
- MySQL触发器
- PostgreSQL 优势,MySQL 数据库自身的特性并不十分丰富,触发器和存储过程的支持较弱,Greenplum、AWS 的 Redshift 等都是基于 PostgreSQL 开发的
- MySQL简单的触发器,个人笔记
- MySQL 5.0 新特性教程 触发器:第一讲
- mysql5.5 对触发器,函数,存储引擎,事件进行主从复制情况.(转)
- mysql——我自己写的两张表(插入、删除、更新)同时进行的(触发器)实例
- MySQL触发器使用详解
- Mysql触发器实现检查约束
- mysql创建触发器错误提示:Can not update in stored function/trigger already used by statement invoked
- mysql触发器(Trigger)简明总结和使用实例
- Mysql视图, 存储过程, 触发器, 事务
- mysql 利用触发器(Trigger)让代码更简单
- mysql之触发器before和after的区别(2)