2011-06-15 125 views
1

我想創建一個SQLite數據庫。 Create方法:Android SQLite數據庫沒有填充

private static class DatabaseHelper extends SQLiteOpenHelper { 

    @Override 
    public void onCreate(SQLiteDatabase db) { 

     db.execSQL(CREATE_BASE_TABLE); 
    } 

} 

是調用SQL字符串(構造函數和升級功能在私有類以及實現):

static final String CREATE_BASE_TABLE ="create table if not exists tableData (" 
     + "id INTEGER PRIMARY KEY," 
     + "name TEXT," 
     + "image TEXT," 
     + "var1 TEXT," 
     + "var2 TEXT," 
     + ");"; 

execSQL回報success=false,正如調試器和斷點所顯示的那樣。

在文件資源管理器中,我看到在數據庫文件夾中創建了data。我在本地機器上打開該文件,只能看到名爲android_metadata而不是tableData的表格,我的字段無處可見!

我該如何解決它,使我的方法正確地填充我的表?我的查詢有語法問題嗎?

+1

logcat是否顯示任何錯誤消息? – Noel 2011-06-15 00:39:55

回答

1

這是非常微妙的,但錯誤是在您的創建表命令。此行不應該有一個逗號:

+ "var2 TEXT," 

相反,它應該僅僅是:

+ "var2 TEXT" 

,因爲它是你所定義的最後一列。

+0

好吧,SQL查詢字符串雖然以分號結尾,但是正確? – CQM 2011-06-15 00:46:44

+2

在語句結尾處不需要分號。 – 2011-06-15 00:50:14