Sqlite如何自动更新时间字段 假设我有个表A, A中有两个字段 分别是ID和time 请问我如何在更新id的时候,由sqlite负责主动更新time 我能想到的是建个触发器,在update的时候,把time字段更新了。但是这样的话,是不是相当于,我更新id字段的时候,其实是履行了两次update语句,效力就低了啊。 我的触发器是这样写的 create trigger A_Update before update on A for each row begin update A set time = datetime('now','localtime') where id = old.id; end; 不知道斑竹是不是这个意思。 如果是的话,我始终感到在update 更新id的时候,实际上是履行了两次update语句,一次更新ID,一次更新tiem。。。还请斑竹给我讲讲。 不是更新两次,你在更新的before之前$$$,获取旧的时间修改成新的时间就可以了 不须要调用UPDATE了,就是把new值修改下就可以,SQLite的触发器没有写过,你可以参考下ORACLE实现自增序列的触发器。 create trigger A_Update before update on A for each row begin set new.time = datetime('now','localtime'); end; |
|