Sqlite教程

SQLite After Update

它指定在更新数据后如何创建触发器。假设我们有两个表COMPANY和AUDIT,在这里我们希望对COMPANY表中正在更新的每条记录保持审计试用。
COMPANY表:
CREATE TABLE COMPANY(
   ID int PRIMARY KEY     NOT null,
   NAME           TEXT    NOT null,
   AGE            int     NOT null,
   ADDRESS        CHAR(50),
   SALARY         REAL
);
创建一个名为AUDIT的新表,当COMPANY表中有更新时,将在其中插入日志消息。
审核表:
CREATE TABLE AUDIT(
    EMP_ID int NOT null,
    ENTRY_DATE TEXT NOT null
); 
更新后创建触发器:
更新操作后,使用以下语法在COMPANY表上创建名为" after_up"的触发器。
 CREATE TRIGGER after_up AFTER UPDATE 
ON COMPANY
BEGIN
INSERT INTO AUDIT(EMP_ID, ENTRY_DATE) VALUES (new.ID, datetime('now'));
END;
更新后的SQLite触发器1
现在按如下所示更新旧记录:
UPDATE COMPANY SET ADDRESS = 'Noida' WHERE ID = 1; 
更新后的SQLite触发器2
查看结果:
更新后的Sqlite触发器3
请参见触发器:
SELECT name FROM sqlite_master
WHERE type = 'trigger'; 
更新4之后的Sqlite触发器

SQLite触发器: 更新前

如果要在更新数据之前创建触发器:
CREATE TRIGGER befor_up BEFORE UPDATE 
ON COMPANY
BEGIN
INSERT INTO AUDIT(EMP_ID, ENTRY_DATE) VALUES (new.ID, datetime('now'));
END;
更新后的SQLite触发器5
请参阅触发器:
SELECT name FROM sqlite_master
WHERE type = 'trigger';      
更新6之后的Sqlite触发器
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4