【发布时间】:2014-03-18 04:32:21
【问题描述】:
根据Docs可以将null传递给AUTOINCREMENT列实现自增功能,但是,当列为int时,显然一个不能传递null给它。
如何解决?
dbhelper.addEntry(new Entry(intCantBeNull, "StringOK"));
【问题讨论】:
-
如果您不向该字段传递值,则 SQLite 将使用自动递增的整数值。或者你可以使用 Integer 类,它接受空值
-
这是我的第一个猜测,但不,它没有。 @user2340612
-
请发布您的插入代码,以便我们更好地帮助您省略自动增量列值。
-
如果您使用 SQLiteDatabase
insert方法并且在ContentValues参数中您没有为auto-incremented column指定值,那么您将得到一个auto-incremented value -
你可以(通常做)为自动递增字段传递NULL,而sqlite3会做它应该做的事情。您似乎遇到的问题是 API 问题(我以外的其他人必须帮助解决)。 NULL 不是 Java 的
null,除非 API 说它是。
标签: java android sqlite auto-increment