mis*_*ena 7 java sqlite android corruption
我得到了一个目录目录,每个目录都包含我必须解析的.sqlite和.sqback文件的集合.
问题是我相信其中一些文件在收到时会损坏,因为我收到错误:错误:[SQLITE_CORRUPT]当我尝试处理它们时,我的控制台上的数据库磁盘映像格式错误(数据库磁盘映像格式错误) .这只发生在某些文件中.我已经隔离了一些,并尝试单独运行我的程序在这些坏文件的新副本上,它们会导致错误.大多数文件虽然很好:)
我意识到我有可能确实会被给予损坏的文件,所以在尝试解析它们之前,我想要一种方法来确定哪些文件是好的,哪些文件不是.
我是用Java写的.我只对sqlite和sqback验证感兴趣,因为我知道我的解析器工作.我正在重复使用之前的项目.
暗示?建议?答案?
非常感谢知识转移.
PRAGMA quick_check像普通的SQL查询一样运行.结果与包含字符串的单列表相同; 对于一个完整的数据库,你得到一行说"ok",对于一个损坏的,一堆错误消息.
sqlite> pragma quick_check;
ok
Run Code Online (Sandbox Code Playgroud)
更改文件中的一些字节后:
sqlite> pragma quick_check;
*** in database main ***
Page 64: btreeInitPage() returns error code 11
On tree page 40 cell 23: Child page depth differs
On tree page 40 cell 24: Child page depth differs
Run Code Online (Sandbox Code Playgroud)
无法保证会发现错误.
| 归档时间: |
|
| 查看次数: |
1641 次 |
| 最近记录: |