gpt4 book ai didi

sqlite - 主键不允许唯一的替换功能

转载 作者:行者123 更新时间:2023-12-03 19:36:29 24 4
gpt4 key购买 nike

CREATE TABLE resource_sync 
(
_id INTEGER UNIQUE ON CONFLICT REPLACE PRIMARY KEY,
status_id INTEGER,
result_id INTEGER
);


如果插入两个相等的 _id值,则SQLite会引发异常:


[13:39:48]对数据库“测试”执行SQL查询时出错:UNIQUE
约束失败:resource_sync._id


但是,在从表创建SQL中删除主键声明的情况下,它允许进行所需的替换。

这是为什么?

谢谢。

最佳答案

主键上的UNIQUE被忽略。

documentation中显示的正确语法为:

CREATE TABLE resource_sync
(
_id INTEGER PRIMARY KEY ON CONFLICT REPLACE,
status_id INTEGER,
result_id INTEGER
);

关于sqlite - 主键不允许唯一的替换功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34787701/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com