我有一个 SQLite 数据库,其中为我的 Android 应用程序插入了记录。
我正在插入屏幕调查的答案,表格中每行保存一个答案。
我的调查有 20 个问题,它会将第一次调查的答案正确插入到数据库中,但是当我为第二次调查插入答案时(以编程方式,相同的问题,刚刚再次完成),它会使数据库格式错误,但从不抛出例外或任何事情。我在前后运行完整性检查,它总是返回 true。
不寻常的是,只有当我尝试查看计算机上的表格时,它才会出现格式错误。我尝试使用 SQLite 数据库浏览器工具 TKSQLite 工具,然后从提供的 sqlite3.exe 打开数据库,它们似乎都将数据库显示为格式错误。虽然 TKSQLite 工具通知我该表格式错误,但我可以获取其他表中的数据。SQLite 数据库浏览器只显示表中没有数据,sqlite3.exe 不会打开任何表。
非常不寻常的是,如果我在应用程序中查询表并将光标行打印出来以记录 cat,或者使用应用程序中的数据,所有数据都在那里。
有没有人只看到部分畸形而没有抛出异常?我希望我的数据库是原始的……但如果我的数据在那里,我可以希望它不会再出现格式错误吗?
我在一些项目中使用 SQLite 数据库做类似的事情,这是我第一次只看到部分畸形。
如果它会帮助我在 Honeycomb 3.2 上使用 Acer a501 平板电脑编程
此外,我正在使用静态单例访问数据库,以避免每次插入时过于频繁地打开和关闭数据库,并且最初使用 SQL 命令插入execSQL()
,但也尝试使用 SQLiteDatabase 方法insert()
无济于事。