SQLite异常:没有这样的表错误

时间:2009-06-01 10:15:22

标签: android sqlite

  

可能重复:
  Android Sqlite - “No Such Table” Error

我们正在尝试在Android上开发应用程序。我们正在使用SQLite数据库和手机上的

  

SQLiteException:没有这样的表。

它在模拟器上工作正常。

任何人都可以就此提供任何意见吗?

3 个答案:

答案 0 :(得分:15)

如果您没有正确指定数据库文件名,我相信它会回退到创建一个空数据库。这通常是“找不到桌子”的原因。检查路径和数据库文件名。

答案 1 :(得分:6)

我遇到了同样问题的不同风格。

我尝试插入时出现no such table错误。

在插入之前,代码正在调用

mDb = mDbHelper.getWritableDatabase(); 

getWritableDatabase(),第一次调用时会调用onCreate()

我有我的SQL查询在这个oncreate方法

中创建表
public void onCreate(SQLiteDatabase db) {

            db.execSQL(DATABASE_CREATE);
            Log.v("INFO1","creating db");
            //Toast.makeText(mCtx, "created", Toast.LENGTH_SHORT).show();
        }

所以对我来说发生的事情是,db在应用程序首次运行时成功创建,但由于其他一些错误而没有表。 稍后,只要运行应用程序,就永远不会调用onCreate(),因为db已经存在,因此没有创建表,因此所有其他SQL命令都失败了。

所以我从onCreate()开始创建表格,现在正在运作

答案 2 :(得分:2)

有些人已经能够使用here提到的步骤解决问题。在我看来,Android 2.2的某些版本存在此问题。我已将此更改合并到我的代码中,但我仍在寻找Beta测试人员,看看它是否真的有效。