gpt4 book ai didi

Cocoa SQLite何时关闭数据库?

转载 作者:行者123 更新时间:2023-12-03 16:48:43 26 4
gpt4 key购买 nike

我正在编写第一个使用 SQLite 的 MacOS 应用程序 (https://github.com/ccgus/fmdb)。

我可以打开/关闭每个事务(CRUD)的数据库连接,或者在 init/dealloc 上。最好的方法是什么?

最佳答案

我不确定我有明确的答案,但我自己对此进行了一些研究,我看到很多人说可以让数据库保持打开状态。

此外,如果您查看 Sqlite 站点,您会发现他们在确保数据库不会因崩溃、电源故障等而损坏方面做了很多工作。

http://www.sqlite.org/testing.html

http://www.sqlite.org/atomiccommit.html

我使用 Sqlite 和 FMDB 的经验是,打开一个连接并保持打开状态似乎就可以了。请记住,这是与文件的“连接”,该文件位于闪存上的本地文件系统上。这与网络连接的情况截然不同。我认为失败的可能性非常小,因为它显然是为了处理崩溃、电源故障等而设计的,即使它们发生在实际的数据库操作期间 - 所以在数据库操作之外它们不是问题。

您当然可以认为在不使用时保持数据库连接打开是一种不好的做法,并且我不会在典型的客户端服务器设置中推荐它,但在 iPhone/iPad 上我认为这是一个非-问题。保持它打开似乎工作正常,并且少了一件需要担心的事情。

关于Cocoa SQLite何时关闭数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6061036/

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