我尝试修改一个SQLite表,定义如下:
String CREATE_TABLE="CREATE TABLE IF NOT EXISTS " + tab_NAME + " ("
+ row_ID + " INTEGER PRIMARY KEY , "
+ row_NAME + " TEXT, "
+ row_EMAIL + " TEXT, "
+ row_WEBSITE + " TEXT, "
+ row_TELEPHONE1 + " TEXT, "
+ row_TELEPHONE2 + " TEXT, "
+ row_TELEPHONE3 + " TEXT, "
+ row_TELEPHONE4 + " TEXT, "
+ row_TELEPHONE5 + " TEXT);";
db_name.execSQL(CREATE_TABLE);
String newTab="CREATE TABLE IF NOT EXISTS temp ("
+ row_ID + " INTEGER PRIMARY KEY AUTOINCREMENT , "
+ row_NAME + " TEXT, "
+ row_EMAIL + " TEXT, "
+ row_WEBSITE + " TEXT, "
+ row_TELEPHONE1 + " TEXT, "
+ row_TELEPHONE2 + " TEXT, "
+ row_TELEPHONE3 + " TEXT, "
+ row_TELEPHONE4 + " TEXT, "
+ row_TELEPHONE5 + " TEXT);";
db_name.execSQL(newTab);
下面是auto_increment alter语句:
String alter="ALTER TABLE temp AUTO_INCREMENT=1;";
ourDatabase.execSQL(alter);
我得到一个错误说(1) near AUTO_INCREMENT: syntax error
怎么了?任何帮助?
2条答案
按热度按时间p8h8hvxi1#
在SQLite中,声明为
INTEGER PRIMARY KEY
的列将自动递增。删除AUTOINCREMENT
关键字,然后尝试。查看SQLite FAQ
sqougxex2#
在
sqlite
设置列中,PRIMARY KEY
是AUTOINCREMENT
。因此,不需要将列显式指定为AUTOINCREMENT
。查看SQLite FAQ。