格式错误的SQLite数据库没有异常被抛出

时间:2012-01-22 05:56:16

标签: android sqlite malformed

我有一个SQLite数据库,其中包含为我的Android应用程序插入的记录。

我在屏幕调查中插入答案,在我的表格中每行保存一个答案。

我的调查有20个问题,它将答案正确地插入到第一次调查的数据库中,但是当我插入第二次调查的答案时(编程方式相同的问题,刚刚再次完成),它会使数据库出错,但是从不抛出异常或任何东西。我之前和之后运行完整性检查,它总是返回true。

不寻常的是,当我试图查看计算机上的表格时,它只是格格不入。我尝试使用SQLite数据库浏览器工具,TKSQLite工具,然后从提供的sqlite3.exe打开数据库,他们似乎都显示数据库格式错误。虽然TKSQLite工具通知我表格格式不正确,但我可以在其他表格中获取数据。 SQLite数据库浏览器只显示表中没有数据,sqlite3.exe不会打开任何表。

非常不寻常的是,如果我在应用程序中查询表并将光标行打印到log cat,或者使用应用程序中的数据,那么所有数据都在那里。

有没有人只看到部分畸形而没有抛出异常?我希望我的数据库能够保持原始状态......但是如果我的数据存在,我希望它不会再出现错误吗?

我使用SQLite数据库处理一些现在做类似事情的项目,这是我第一次看到只有部分畸形。

如果有助于我在Honeycomb 3.2上使用Acer a501平板电脑编程

此外,我使用静态单例访问数据库,以避免每次插入过于频繁地打开和关闭数据库,最初使用execSQL()通过SQL命令插入,但也尝试使用SQLiteDatabase方法{ {1}}无济于事。

1 个答案:

答案 0 :(得分:0)

我们弄清楚数据库出错的原因但设备上没有。根据Windows,我们使用的平板电脑被视为便携式媒体设备,当我们将其从设备复制到计算机时出现了一些问题。使用拇指驱动器从设备复制到拇指驱动器再到Windows解决了问题。