【发布时间】:2014-10-23 02:59:59
【问题描述】:
我正在尝试在我的数据库中创建一个表,其 ID 本身是自动递增的,但是每当我尝试将 AUTOINCREMENT 关键字添加到我的查询时,它都会告诉我:
AUTOINCREMENT 只允许在 INTEGER PRIMARY KEY 上使用
这是我的查询:
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "CREATE TABLE IF NOT EXISTS " + TABLE_TASKS + " ( "
+ KEY_ID + "INTEGER PRIMARY KEY AUTOINCREMENT, "
+ KEY_NOTETITLE + " TEXT, " + KEY_NOTECONTENT + " Text, "
+ KEY_STATUS + " INTEGER)";
db.execSQL(sql);
}
我也尝试过编写 AUTO_INCREMENT,但后来出现语法错误。
我发现这是问题的根源,因为每当我尝试删除 AUTOINCREMENT 字时,它都可以正常工作。
那么……你认为问题出在哪里?
【问题讨论】:
-
相关:如果你想在 SQLite 中创建一个自动递增的非主键列(谷歌把我带到这里),请参阅this answer。
标签: android sqlite auto-increment