加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

SQLite UPSERT – 重复键更新

发布时间:2020-12-12 19:21:12 所属栏目:百科 来源:网络整理
导读:MySQL有这样的东西: INSERT INTO visits (ip,hits)VALUES ('127.0.0.1',1)ON DUPLICATE KEY UPDATE hits = hits + 1; 据我所知,这个功能在SQLite中不存在,我想知道的是,如果有任何方式来归档相同的效果,而不必执行两个查询。此外,如果这是不可能的,你
MySQL有这样的东西:
INSERT INTO visits (ip,hits)
VALUES ('127.0.0.1',1)
ON DUPLICATE KEY UPDATE hits = hits + 1;

据我所知,这个功能在SQLite中不存在,我想知道的是,如果有任何方式来归档相同的效果,而不必执行两个查询。此外,如果这是不可能的,你喜欢:

> SELECT(INSERT或UPDATE)或
> UPDATE(如果UPDATE失败,则插入)

INSERT OR IGNORE INTO visits VALUES ($ip,0);
UPDATE visits SET hits = hits + 1 WHERE ip LIKE $ip;

这要求“ip”列具有UNIQUE(或PRIMARY KEY)约束。

编辑:另一个伟大的解决方案:http://stackoverflow.com/a/4330694/89771。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读