1.前言
GitHub上2000多颗星的FMDB数据库框架想来大家都很熟悉,
今天用Swift对其进行了一个完成的数据存储读流程
写完之后用博客分享之,与大家一起交流,
希望对需要的朋友提供些帮助
那么如何如何用Swift使用FMDB进行数据库操作呢?
2.Swfit:fmdb
2.1.导入基本框架
先上Github Clone下来FMDB原始框架
将里面fmdb文件夹拖到自己工程里
以及extra文件夹下Swift extensions文件夹拖入自己工程
然后在自己的工程导入iOS SDK, C语言库 libsqlite3.dylib
2.2.单例化封装数据库管理对象

2.3.创建数据库,打开数据库
在初始化数据库管理对象时创建数据库并打开

2.4.fmdb添加数据

2.5.fmdb删除数据

2.6.fmdb修改数据

2.7.fmdb查询数据

3.线程安全
保证数据库访问的线程安全这在我们开发中是极为重要的
而FMDB里的FMDatabaseQueue的设计
其目的是让我们避免发生并发访问数据库的问题
因为对数据库的访问可能是随机的(在任何时候)、不同线程间(不同的网络回调等)的请求。内置一个Serial队列后,FMDatabaseQueue就变成线程安全了,所有的数据库访问都是同步执行,而且这比使用@synchronized或NSLock要高效得多。
到这里整个流程就基本结束了
最后让我们来看看运行结果
希望查看源码的朋友可以去我GitHub下载