我创建了一个名为DRINK的表。我最初插入了两行。升级时,我想删除两行并将我的主键重置为1.我得到的行要删除,但没有任何运气重置主键。有人知道如何做到这一点的语法,或者甚至有可能吗?这是从我的onUpdate函数调用的函数:在Android中重置INTEGER PRIMARY KEY AUTOINCREMENT
private void updateMyDatabase(SQLiteDatabase db, int olderVersion, int newVersion){
Log.v("DatabaseHelper","UPDATE MY DATABASE");
if (olderVersion<1){
db.execSQL("CREATE TABLE DRINK (_id INTEGER PRIMARY KEY AUTOINCREMENT,"
+ "NAME TEXT, "
+ "DESCRIPTION TEXT, "
+ "IMAGE_RESOURCE_ID INTEGER);");
insertDrink(db,"latte","Espresso and Steamed Milk",R.drawable.latte);
insertDrink(db, "cappuccino", "This a Cappuccino", R.drawable.cap);
}
if (olderVersion < 2){
db.execSQL("delete from DRINK");
db.execSQL("alter table AUTO_INCREMENT =1"); //*** NEED HELP HERE***
insertDrink(db, "coff", "Espresso and Steamed Milk", R.drawable.latte);
}
}
我在网上找到这段代码,但它不工作。谢谢。
db.execSQL("alter table AUTO_INCREMENT =1");
我得到的序列此日志错误:E/SQLiteLog:(1)在“<”附近:语法错误 –
您是否将更改为所需的值? –
是的,我做到了。下面是确切的代码行:db.execSQL(“UPDATE SQLITE_SEQUENCE SET seq = <1> WHERE name ='DRINK'”); –