加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

通过Swift-iOS中的SQLite数据库导入和查询

发布时间:2020-12-14 05:38:16 所属栏目:百科 来源:网络整理
导读:我正在制作一个使用5个不同表格的大型数据库的应用程序.我想将该数据库导入到应用程序包中,并能够通过表进行查询.用户不会编辑数据库,因此不需要添加和删除记录. 在应用程序中添加数据库的最佳方法是什么? 过程如下: 将数据库添加到捆绑包中.将其拖动到项
我正在制作一个使用5个不同表格的大型数据库的应用程序.我想将该数据库导入到应用程序包中,并能够通过表进行查询.用户不会编辑数据库,因此不需要添加和删除记录.

在应用程序中添加数据库的最佳方法是什么?

过程如下:

>将数据库添加到捆绑包中.将其拖动到项目中时,可以选择将其添加到代表主应用程序的目标.或者,查看目标设置,单击“Build Phases”并确认数据库出现在“Copy Bundle Resources”列表中.
>使用像FMDB这样的框架来简化您的生活.这是用Objective-C编写的,但在Swift中也很有用.你需要做的是:

>将FMDB的.h和.m文件复制到项目中;
>当提示创建“桥接标题”时,请执行此操作;
>将以下行添加到桥接标头:

#import "FMDB.h"

通过遵循这些步骤,您可以将Objective-C中开发的此框架用于您的Swift项目.
>您现在可以使用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()

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读