FMDB:在ios应用程序的整个生命周期中,它是否仍然是良好的开放数据库?

Nik*_*414 5 fmdb ios

我对FMDB包装类的数据库打开和关闭操作感到困惑.

如果我在AppDelegate类的applicationDidFinishLoading方法中打开数据库并且在应用程序终止之前不关闭,是否会产生问题?

谢谢.

小智 7

除非您更改架构,否则没有理由关闭它.所以保持开放.


Rav*_*man 5

来自官方FMDB文档:

开盘

在与数据库交互之前,必须先打开它.如果没有足够的资源或权限来打开和/或创建数据库,则打开失败.

if (![db open]) {
[db release];
return;
}
Run Code Online (Sandbox Code Playgroud)

闭幕

完成对数据库的查询和更新后,应关闭FMDatabase连接,以便SQLite放弃在操作过程中获取的任何资源.

[db close];
Run Code Online (Sandbox Code Playgroud)

所以,每次查询数据库,你应该有一双openclose你的数据库调用.

简而言之,当您需要来自数据库的东西时打开数据库连接,并在完成数据库使用后关闭它.

链接到文档:https://github.com/ccgus/fmdb