如果SQL表不存在,我该如何创建它?

时间:2015-07-01 15:55:09

标签: android mysql

我在Android编程,我正在尝试创建一个SQL数据库来存储高分。在我的onCreate方法中,我有

String query = "CREATE TABLE " + TABLE_SCORES + "(" +
                COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
                COLUMN_SCORE + " TEXT" + ");";
db.execSQL(query);

其中TABLE_SCORES是表名,COLUMNS是我的列。

当我运行应用程序时,它第一次运行并保存,但第二次崩溃。在日志中,它表示它无法编译我的查询。我已经尝试IF NOT EXISTS,但没有帮助。

2 个答案:

答案 0 :(得分:1)

只需在IF NOT EXISTS之后添加CREATE TABLE

答案 1 :(得分:1)

你应该继承SQLiteOpenHelper,实现public abstract void onCreate (SQLiteDatabase db),并将你的创建查询放在那里。第一次创建数据库时,onCreate只调用一次。这样就可以避免检查表是否退出