sqlite插入主键

时间:2011-06-13 02:30:36

标签: ios sqlite

我在iphone中使用sqlite(3.7.4)。 我创建了一个像:

的表

create table A (UserName varchar (50) primary key, Num integer);

然后我将下面的记录插入两次:


('abc',1);

通常,DB中只应有一条记录。 但是我在DB中找到了


(abc,1);
(  ,1);

我很困惑,因为UserName是primary key,为什么有两条记录! 我不知道是什么问题。 任何人都可以帮助我吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

为什么要使用用户名作为主键。主键应该唯一标识记录。这是为什么当你第二次插入两次时你有主键约束违规

create table A (UserName varchar (50) primary key, Num integer, unique (UserName));