相关疑难解决方法(0)

Sqlite数据库中的.db-shm和.db-wal扩展是什么?

在运行一些关闭数据库的测试,删除它并用测试夹具替换之后,我看到了我的应用程序和数据库文件状态的一些奇怪行为.当我在调试PC上使用工具检查数据库文件时,它与应用程序本身似乎报告的内容不匹配.这种奇怪的行为可能与这个bug有关.

我注意到有两个文件具有与数据库相同的基本名称(具有正常.db扩展名.)文件扩展名是.db-shm.db-wal,并且每个.db文件都比文件的时间戳更新.

我假设这些是某种类型的临时文件.但是,我想知道应用程序是否被终止,是否应该删除它们?更重要的是,我假设.db在操作系统终止应用程序之前,存储在其中的任何数据都会在文件内更新.它是否正确?

sqlite file-extension android

55
推荐指数
2
解决办法
5万
查看次数

在iPhone SDK上格式错误的sqlite数据库磁盘映像

我在使用SQLite作为数据库后端的iPhone SDK上的新应用程序时遇到问题.

偶尔,我的应用程序将停止将数据加载到我的UITableViews,并在通过管理器下载设备DB后,我可以通过命令行访问SQLite DB.我可以查询某些表,但没有得到"SQL错误:数据库磁盘映像格式错误"错误的其他表.请参阅下面的sqlite会话:

    SQLite version 3.6.17
    Enter ".help" for instructions
    Enter SQL statements terminated with a ";"
    sqlite> select * from user;
    1|cpjolicoeur@gmail.com|cpjolicoeur||4d055e38bb1d3758|image/gif|cartoonme_avatar.gif||Craig|Jolicoeur|1|1
    sqlite> select * from item;
    SQL error: database disk image is malformed
    sqlite> 
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我的用户表工作正常,但我的项目表格格式不正确,这与我在我的应用程序中看到的项目不加载相对应.应用程序没有崩溃,数据只是因为这个格式错误而无法加载.

任何想法为什么会这样?我唯一的想法是,数据库可能已损坏,因为我通过应用程序中的后台线程写入SQLite数据库.我通过后台线程中的NSOperationQueue从Web服务器下载数据,并使用下载的数据更新SQLite DB.在后台线程中写入数据库(虽然可能从主线程读取)会破坏数据库,还是其他什么?

database sqlite iphone

8
推荐指数
2
解决办法
6405
查看次数

标签 统计

sqlite ×2

android ×1

database ×1

file-extension ×1

iphone ×1