分享

Sqlite如何自动更新时间字段

 quasiceo 2012-12-29
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;

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多