SQLite CREATE TRIGGER:如果既没有指定BEFORE也没有指定AFTER,那么默认值是多少?

时间:2013-11-22 10:49:41

标签: triggers sqlite

CREATE TRIGGER的{​​{3}}文档中,可以看出BEFOREAFTERINSTEAD OF可能会被忽略。

那么,什么时候没有指定触发器被触发?它在哪里记录?

CREATE TRIGGER

1 个答案:

答案 0 :(得分:1)

sqlite> create table t(x, triggervalue);
sqlite> insert into t(x) values(1);
sqlite> create trigger tt
   ...> update of x on t
   ...> begin
   ...>   update t set triggervalue = x;
   ...> end;
sqlite> update t set x = 2;
sqlite> select triggervalue from t;
1

所以默认恰好是BEFORE。

这在任何地方都没有记录,没有BEFORE / AFTER的语法看起来很难看,我想没人会想到使用它。