我有以下SQLite查询:
CREATE TABLE Logs ( Id integer IDENTITY (1, 1) not null CONSTRAINT PKLogId PRIMARY KEY, ...
这是什么意思?,
IDENTITY (1, 1)
,PKLogId
,->,这是什么?这似乎没有在任何地方定义,我希望Id
是integer primary key
autoincrement
。我希望能够插入到这个Logs
表中,省略查询中的Id
列。我希望自动添加和递增Id
。这个是可能的吗?我该怎么做?当我尝试在不使用Id
的情况下插入时,我得到:
Error while executing query: Logs.Id may not be NULL
发布于 2011-12-15 20:15:00
我不确定您是否根据示例的语法使用了SQLite。
如果是,您可能会对SQLite FAQ #1: How do I create an AUTOINCREMENT field?感兴趣
简短回答:声明了INTEGER PRIMARY KEY的列将自动递增。
发布于 2011-12-15 20:16:10
将其更改为:
CREATE TABLE Logs ( Id integer PRIMARY KEY,....
发布于 2014-07-23 10:29:47
如果是,您可能会对SQLite常见问题解答#1感兴趣:如何创建自动增量字段?:
简而言之:声明了INTEGER PRIMARY KEY的列将自动递增。
事实上,这并不完全准确。整数主键确实会递增,但是如果表删除所有行,它将重新从头开始,如果您希望正确绑定所有关联的记录,以便在整数字段上的主键声明之后使用自动递增描述,这一点很重要。
https://stackoverflow.com/questions/8519936
复制相似问题