gpt4 book ai didi

ios - 核心数据 WAL 模式不会持久化对 .db 的更改,只有 .db-wal 和 .db-shm

转载 作者:IT王子 更新时间:2023-10-29 06:28:58 35 4
gpt4 key购买 nike

所以,我一直在使用 MagicalRecord 开发 iPad 应用程序,最近在转移到自动迁移商店后我遇到了一些问题。我需要将我的 .db 文件从一个设备同步到另一个设备,所以我需要所有数据都在 .db 中,但似乎启用了 WAL 日志模式(Magical Record 自动迁移存储的默认模式)否无论我如何保存,它只会保留对 .db-wal 或 .db-shm 文件的更改。我切换到普通的 sqlite 商店,一切正常。所以,我的问题是,在启用 WAL 日记功能的情况下,我是否需要做任何特殊的事情才能真正让 Core Data 保存到主数据库,或者我只需要禁用它?

最佳答案

更改日志模式。你有 Magical Record source , 毕竟。将 SQLite 日志模式更改为 DELETE,日志模式将在每次事务后删除。禁用日志记录是一个非常糟糕的主意,不要那样做。但是使用不同的模式应该没问题。

一旦持久存储打开,Core Data 不提供任何用于操作日志的 API。 SQLite 是一个实现细节,Core Data 不公开内部 SQLite 细节。您可以获得的最接近的是设置 Core Data 堆栈时的 options 参数,这是您可以更改日志模式的地方(以及 MR 更改它的地方)。

关于ios - 核心数据 WAL 模式不会持久化对 .db 的更改,只有 .db-wal 和 .db-shm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18677169/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com