一、概念
触发器是与表有关的数据库对象,指的是在insert\update\delete操作之前或者之后,能够触发并执行触发器中定义的SQL语句集合。触发器的这种特性可以使得应用在数据库端确保数据的完整性以及日志记录,数据校验等操作。
并且可以使用OLD和NEW来引用触发器中发生变化的记录内容,这与其他的数据库是类似的,但是现在的触发器只支持行级触发,并不支持语句级触发。
二、相关操作
1、触发器的创建
创建触发器的语法结构:
create trigger trigger_name
before/after insert/update/delete
on table_name
[for each row] --- 行级触发器
begin
trigger_stmt;
end;
通过触发器来记录数据表的数据变化(新增insert、修改update、删除delete)记录。
首先创建一个employee表,并插入数据:
DROP TABLE IF EXISTS `employee`;
CREATE TABLE `employee` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`lastName` varchar(255) DEFAULT NULL,
`email` varchar(255) DEFAULT NULL,
`departmentID` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
-- ----------------------------
INSERT INTO &