SQLite - 为插入或更新创建触发器

时间:2016-02-07 15:24:10

标签: sqlite triggers sql-update sql-insert

这可以在SQLite中为Insert和Update操作创建一个触发器吗? 我的意思是,像这样:

CREATE TRIGGER dbo.TR_TableName_TriggerName
    ON dbo.TableName
    AFTER INSERT, UPDATE, DELETE
AS
BEGIN
    SET NOCOUNT ON;

    IF NOT EXISTS(SELECT * FROM INSERTED)
        -- DELETE
        PRINT 'DELETE';
    ELSE
    BEGIN
        IF NOT EXISTS(SELECT * FROM DELETED)
            -- INSERT
            PRINT 'INSERT';
        ELSE
            -- UPDATE
            PRINT 'UPDATE';
    END
END;

对于MS SQL我认为,来源:Insert Update trigger how to determine if insert or update

编辑: 是否可以为多个表创建一个触发器?

1 个答案:

答案 0 :(得分:5)

不,CREATE TRIGGER的{​​{3}}清楚地表明只能给出INSERTUPDATEDELETE中的一个。

它还显示只能将一个表作为要触发的表格。