2016-09-18 41 views
-2
String QUERY11 = "CREATE TABLE " + TABLE_NAME + "(" + COL_DATE + " TEXT, " + COL_FAULT + " TEXT, " + COL_PARTREPLACE + " TEXT, " + COL_AMOUNT + " TEXT, " + COL_TECHNICIAN + " TEXT);";   

的table命令時,我在我的代碼中使用這條線,然後把它給錯誤,如顯示語法錯誤在創建數據庫sqllite

android.database.sqlite.SQLiteException:近「5151」:語法錯誤 (碼1):在編譯:CREATE TABLE 5151(日期TEXT,故障TEXT, partReplace TEXT,量TEXT,技師TEXT);

回答

1

你TABLE_NAME是一個整數,你應該使用是有效的,而無需使用他們周圍的支架應該是任何字母數字的組合,不以數字開頭的字符串

0

表名:

檢查的this問題

0

接受的答案不能使用數字作爲表名的第一個字母,你的表名開始與一個字符,或者你可以試試這個。

String QUERY11 = "CREATE TABLE '" + TABLE_NAME + "'(" + COL_DATE + " TEXT, " + COL_FAULT + " TEXT, " + COL_PARTREPLACE + " TEXT, " + COL_AMOUNT + " TEXT, " + COL_TECHNICIAN + " TEXT);"; 
0

SQL表名稱結構:

  • 只有字母,數字和下劃線是不允許的。
  • 字段名稱必須以字母字符或下劃線開頭

    ABC123 - 有效

    123ABC - 無效

    abc_123 - 有效

    _123abc - 有效