开发者社区 问答 正文

SQLite插入-重复键更新(UPSERT)

MySQL有这样的东西:

INSERT INTO visits (ip, hits) VALUES ('127.0.0.1', 1) ON DUPLICATE KEY UPDATE hits = hits + 1; 据我所知,SQLite中不存在此功能,我想知道的是,是否有任何方法可以实现相同的效果而不必执行两个查询。另外,如果这不可能,那么您更喜欢什么:

SELECT +(插入或更新)或 UPDATE(如果UPDATE失败,则 + INSERT )

展开
收起
保持可爱mmm 2020-05-10 22:24:15 1007 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 因为3.24.0 SQLite还支持upsert,所以现在您可以简单地编写以下内容

    INSERT INTO visits (ip, hits) VALUES ('127.0.0.1', 1) ON CONFLICT(ip) DO UPDATE SET hits = hits + 1;来源:stack overflow

    2020-05-10 22:24:28 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等