我正在制作一个应用程序,该应用程序使用包含 5 个不同表的大型数据库。我想将该数据库导入应用程序包并能够通过表进行查询。用户不会编辑数据库,因此不需要添加和删除记录。
在应用中添加数据库的最佳方式是什么?
最佳答案
过程如下:
将数据库添加到您的包中。当你将它拖到你的项目中时,你可以选择将它添加到代表你的主应用程序的目标中。或者,查看目标设置,单击“构建阶段”并确认数据库出现在“复制捆绑资源”列表中。
使用类似 FMDB 的框架简化你的生活。这是用 Objective-C 编写的,但在 Swift 中也能很好地工作。你需要做的是:
将 FMDB 的 .h 和 .m 文件复制到您的项目中;
当系统提示创建“桥接头”时,执行此操作;
将以下行添加到您的桥接头:
#import "FMDB.h"
按照这些步骤,您可以在您的 Swift 项目中使用这个用 Objective-C 开发的框架。
您现在可以使用 FMDB 框架编写 Swift 代码。例如,打开数据库的 Swift 代码,从名为
test的表中选择列
,看起来像:x
、y
和z
let path = NSBundle.mainBundle().pathForResource("test", ofType:"sqlite") let database = FMDatabase(path: path) if !database.open() { print("Unable to open database") return } if let rs = database.executeQuery("select * from test", withArgumentsInArray: nil) { while rs.next() { let x = rs.stringForColumn("x") let y = rs.stringForColumn("y") let z = rs.stringForColumn("z") print("x = \(x); y = \(y); z = \(z)") } } else { print("executeQuery failed: \(database.lastErrorMessage())") } database.close()
关于ios - 在 Swift 中通过 SQLite 数据库导入和查询 - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26345902/