关于sqlite数据库的问题,没有这样的表:

时间:2010-02-26 14:43:56

标签: android sqlite

我打开一个sqlite数据库并使用rawquery来获取数据。

但是log.e显示了信息:

  

android.database.sqlite.SQLiteException:没有这样的表:types:

但是,我真的有这张桌子。

我也尝试使用其他sql,但也得到错误信息,如

  

android.database.sqlite.SQLiteException:没有这样的表:malls:

我确信有这两张桌子。 那么为什么要收到错误信息?

4 个答案:

答案 0 :(得分:11)

如果这是在模拟器上,请使用DDMS文件资源管理器或adb pull下载数据库文件的副本并确认其内容。

  

我创建了一个自定义的SQLiteOpenHelper   将此文件复制到路径:   /data/data/com.SGMalls/databases/mallMapv2.sqlite

如果您尝试在SQLiteOpenHelper的{​​{1}}中复制该文件,则为时已晚。我会在那之前做的。

  

所以复制文件代码可能不行   复制完整的文件。

在这种情况下,您更有可能收到有关损坏文件的错误。

答案 1 :(得分:2)

如果您有多个内容提供者,您可能会认为您的表存在而不存在。在这种情况下,您获得的错误是合法的。

请查看此处了解详情和解决方案: http://devserghini.blogspot.com/2010/11/android-sqliteopenhelper-and-multiple.html

答案 2 :(得分:2)

我认为更改表结构时会发生此错误。要解决此问题,请清理数据 (设置 - > 管理应用程序 - > 清除数据),然后再安装新应用程序。

问候。

答案 3 :(得分:1)

SQLiteDatabase.execSQL()解释采用单个字符串sql,以“;”结尾。两行没有解释。

在几行中创建表只是没有执行。