SQLitie 触发器

发布时间 2023-12-14 15:21:07作者: 秃头的C#

SQLite触发器是数据库的回调函数,在指定数据库时间发生时,自动执行或调用,比如insert,update,delete时触发

创建一个触发器(trigger)基本语法如下:

CREATE TRIGGER TRIGGER_NAME [BEFORE|AFTER] EVENT_NAME ON TABLE_NAME

BEGIN

  -- 触发器逻辑--

END;

  • BEFORE/AFTER关键字决定什么时候执行触发器动作。决定时在关联的插入、修改或删除之前或之后执行触发器动作。
  • 当触发器相关联的表被删除,自动删除触发器。
--创建staff员工对应的日志表
CREATE TABLE STAFF_LOG(
    staff_id int not null,
    staff_Date Text not null
);

-- 创建触发器 监控此表记录的插入时间
CREATE TRIGGER staff_logff AFTER insert 
on staff
BEGIN
    INSERT INTO STAFF_LOG (STAFF_ID,STAFF_DATE) VALUES(
        new.sID,datetime('now')
    );
end;


-- 查询刚创建触发器,staff_logtrigger
select *from staff;
select * from STAFF_LOG;

-- 测试数据
insert into staff values(
7,'trigger',40,'体育3','部长3',5000
);

--删除触发器
drop TRIGGER staff_logff;