Swift 3 sqlite/使用数据库?
Posted
技术标签:
【中文标题】Swift 3 sqlite/使用数据库?【英文标题】:Swift 3 sqlite/using a database? 【发布时间】:2016-07-18 03:09:51 【问题描述】:我对快速编码还很陌生,但我正在开发一个应用程序,它确实需要一个数据库来存储大量数据。我研究了 coredata ,它似乎不是我需要的。使用 sql 语句的完整数据库确实是我正在寻找的。p>
网上有很多关于在 ios 中设置 sqlite 数据库的信息,但自从 Swift 3 和 xcode 8 发布以来,情况似乎已经发生了变化。
我不确定如何从项目中实际“连接”到 sqlite 数据库,我看到的所有代码都需要计算机上的数据库的“路径”,但是当应用程序交付时,用户显然无法访问该路径。是否需要在项目中创建 .sqlite 文件?
感谢您的帮助!
【问题讨论】:
【参考方案1】:您肯定需要一些数据库文件,并且该数据库文件具有路径。即使在 iOS 上也是如此。
现在,如果您的应用程序用户可以修改数据库,那么数据库文件很可能存储在 Documents 文件夹中,这是所有 iOS 应用程序都有的特殊文件夹。您在此文件夹中创建一个文件路径并在该路径打开数据库。如果需要,SQLite 将创建一个空数据库。
如果您的应用程序用户不应该修改数据库(例如对于英语词典应用程序),那么数据库很可能是您的应用程序的资源。资源是捆绑在您的应用程序中的文件。你向 NSBundle.main 询问这个资源的路径,并打开一个到它的连接。
您可以在需要支持时使用 GRDB.swift 库:https://github.com/groue/GRDB.swift。它支持 Swift 2.2 / 2.3 / 3.0。
【讨论】:
以上是关于Swift 3 sqlite/使用数据库?的主要内容,如果未能解决你的问题,请参考以下文章
使用 swiftyJSON 和 sqlite.swift 将基于 json 的数据添加到 sqlite 数据库中