[英]SQLite - How to fix syntax error (code 1)
在我的Input.java文件中
public class Input {
private int _id;
private String _username;
public Input(){
}
public Input(String username){
this._username = username;
}
public void set_id(int _id) {
this._id = _id;
}
public void set_username(String _username) {
this._username = _username;
}
public int get_id() {
return _id;
}
public String get_username() {
return _username;
}
}
在我的DBHandler.java里面
public class DBHandler extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_NAME = "input.db";
public static final String TABLE_INPUT = "input";
public static final String COLUMN_ID = "_id";
public static final String COLUMN_USERNAME = "username";
public DBHandler(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, DATABASE_NAME, factory, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String query = "CREATE TABLE " + TABLE_INPUT + "(" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT " +
COLUMN_USERNAME + " TEXT " +
");";
db.execSQL(query);
}
每當我嘗試執行此操作時,都會收到錯誤消息:
Caused by: android.database.sqlite.SQLiteException: near "username": syntax error (code 1): , while compiling: CREATE TABLE input(_id INTEGER PRIMARY KEY AUTOINCREMENT username TEXT );
我到底在做什么錯?
用戶名前缺少逗號:
" INTEGER PRIMARY KEY AUTOINCREMENT<missing comma here> "
更正了以下代碼:
String query = "CREATE TABLE " + TABLE_INPUT + "(" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
COLUMN_USERNAME + " TEXT " +
");";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.