题目描述:
构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。
CREATE TABLE employees_test(
ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);
CREATE TABLE audit(
EMP_no INT NOT NULL,
NAME TEXT NOT NULL
);
解答:
create trigger audit_log after insert on employees_test
begin
insert into audit values(NEW.id,NEW.name);
end
1.create trigger :创建触发器
2.触发器要说明是在after 还是before事务发生时触发
3.要指明是insert 、delete、update操作
4. on 表名
5.begin和end之间写触发的动作
6.在insert语句尾需要加上 ‘;’,否则会报错
7.触发器中可以通过NEW获得触发事件之后on对应的tablename的相关列的值,OLD获得触发事件之前的on对应的tablename的相关列的值