【问题标题】:Read-only SQLite database in application bundle应用程序包中的只读 SQLite 数据库
【发布时间】:2016-03-27 01:49:05
【问题描述】:

假设我已经将一个大型内部参考数据 SQLite 数据库与我的 iOS 应用程序捆绑在一起。它永远不会在运行时被写入,并且只会随着新的应用发布而改变。

通常,预先生成的 SQLite 数据库文件会在使用前复制到应用程序的库或用户文档目录中,以允许读取访问。但由于在这种情况下不需要:将文件保存在应用程序包中并从那里使用它是否有任何危害、潜在的性能问题或其他问题?

换句话说:

let myBundledDatabase = NSBundle.mainBundle().pathForResource("MyDatabase", ofType: "db")!
sqlite3_open(myBundledDatabase, // ...

【问题讨论】:

    标签: ios sqlite nsbundle


    【解决方案1】:

    这应该可以正常工作。打开文件时指定 SQLITE_OPEN_READONLY 标志并使用sqlite3_open_v2(...)

    【讨论】:

      猜你喜欢
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 2013-04-24
      • 2015-11-26
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多