我在 iphone 中使用 sqlite(3.7.4)。 我创建了一个表:
create table A (UserName varchar (50) primary key, Num integer);
然后我两次插入下面的记录:
('abc',1);
通常DB中应该只有一条记录。 但是我在数据库中找到了
(abc,1);
( ,1);
我很困惑,因为用户名是主键
,为什么会有两条记录!
我不知道出了什么问题。
谁能帮帮我?
谢谢。
最佳答案
为什么要使用用户名作为主键。主键应唯一标识记录。为什么在第二次插入两次时会违反主键约束
create table A (UserName varchar (50) primary key, Num integer, unique (UserName));
关于ios - 带主键的sqlite插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6326177/