最佳答案
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 的语法看起来很丑陋,我猜没有人想到使用它。
关于triggers - SQLite创建触发器: What is the default if neither BEFORE nor AFTER has been specified?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20143031/