我已经阅读了SQLite文档中的Atomic Commit.如果你真的想了解发生了什么,这可能不会有点过分,但简而言之,交易是这样的:
锁定数据库文件
创建回滚日志
确定数据库文件的哪些部分将要更改
将这些页面的副本写入日志文件
编写日志文件头
将您想要的更改写入数据库文件
删除回滚日志(这是提交)
当用户与妈妈交谈并重新启动应用程序时,当它尝试打开数据库文件时,如果存在回滚日志,它将使用类似的安全过程将原始数据写回数据文件.即使您丢失了交易并且丢失了回滚,一旦妈妈的精神崩溃得到适当的挫败,它最终会得到照顾,并且他可以一次运行该应用程序超过几秒钟.
如果是我,我会相信交易.有了这么多SQLite用户,即使在嵌入式应用程序中,我认为如果交易提交失败,那么整个网络上的交易提交失败将是一个非常热门的话题.
我已经阅读了SQLite文档中的Atomic Commit.如果你真的想了解发生了什么,这可能不会有点过分,但简而言之,交易是这样的:
锁定数据库文件
创建回滚日志
确定数据库文件的哪些部分将要更改
将这些页面的副本写入日志文件
编写日志文件头
将您想要的更改写入数据库文件
删除回滚日志(这是提交)
当用户与妈妈交谈并重新启动应用程序时,当它尝试打开数据库文件时,如果存在回滚日志,它将使用类似的安全过程将原始数据写回数据文件.即使您丢失了交易并且丢失了回滚,一旦妈妈的精神崩溃得到适当的挫败,它最终会得到照顾,并且他可以一次运行该应用程序超过几秒钟.
如果是我,我会相信交易.有了这么多SQLite用户,即使在嵌入式应用程序中,我认为如果交易提交失败,那么整个网络上的交易提交失败将是一个非常热门的话题.