数据库读取操作一般都是多线程访问的。在对数据进行读取时,我们要保证其当前状态不能被修改,即读取时加锁,否则就会出现数据错误混乱。IOS中常用的两种数据持久化存储方式:CoreData和SQLite,两者都需要设置线程安全,在这里以FMDB来解释对SQLite的线程安全访问。 一:FMDB的线程安全: ...
分类:
数据库 时间:
2016-08-29 17:52:10
阅读次数:
184
1、以前使用数据库,因为一般就建立一张表,所以都是自己写代码创建,没用过fmdb,这次因为项目中涉及聊天模块,需要多张表格和数据库保存聊天记录 按照以前方法不好操作,就研究了下fmdb,发现确实挺方便的。FMDB下载地址:https://github.com/ccgus/fmdb。 2、导入FMDB ...
分类:
数据库 时间:
2016-08-28 12:37:07
阅读次数:
232
/** * 创建表 */ - (void)createTable { //1.初始化数据库对象 并且 2.打开数据库 BOOL isOpenSuccess = [self.database open]; NSLog(@"数据库打开%@",isOpenSuccess?@"成功":@"失败"); //3 ...
分类:
数据库 时间:
2016-08-25 20:16:31
阅读次数:
171
简介: FMDB是基于SQlite3的封装一个第三方的OC库,操作起来更加简单,性能比Coredata更加高。 1.使用示例: 2.创建数据库并建表 3.插入数据 4.查找数据 5.删除和更新 附: String分类获取文件目录 ...
分类:
数据库 时间:
2016-08-23 01:08:22
阅读次数:
244
1、什么是FMDB? FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API。 无论项目中使用 ARC 还是 MRC,对 FMDB 都没有任何影响,FMDB 会在编译项目时自动匹配。 2、FMDB主要的类。 2.1、FMDatabase 一个FMDatab ...
分类:
数据库 时间:
2016-08-18 19:45:11
阅读次数:
267
今天自己给程序嵌套了fmdb,学习了fmdb的用法,总结一下经验,主要是查询是用like和NSSting结合,在这里我只粘贴sql语句1:以什么开头NSString*selectString=[NSStringstringWithFormat:@"SELECT*FROMpersonWHEREperson_nameLIKE‘%@%%‘",name];2:包含什么NSString*selectString=[NSS..
分类:
其他好文 时间:
2016-08-16 22:17:17
阅读次数:
163
一、简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来更加面向对象,省去了很多麻烦、冗余的C语言代码 对比苹果自带的Core Data框架,更加轻量级和灵活 提供了多线程安全的数据库操作方法, ...
分类:
移动开发 时间:
2016-08-12 18:21:54
阅读次数:
233
一、代码示例 1.需要先导入FMDB框架和头文件,由于该框架依赖于libsqlite库,所以还应该导入该库。 2.代码如下: 先插入数据,之后查询结果,打印如下: 3.代码说明 有了一个队列对象,它的内部自动就拥有一个数据库对象,且数据库的操作是线程安全的。 二、事务 事务,没有事务的话会出现问题。 ...
分类:
移动开发 时间:
2016-08-12 18:08:33
阅读次数:
221
FMDB 版本迁移 安装 1. 通过CocoaPods 在项目根目录创建并编辑 Podfile 内容如下 $ cd /path/to/MyProject $ touch Podfile $ edit Podfile platform :ios, '5.0' # Or platform :osx, ' ...
分类:
数据库 时间:
2016-08-11 19:26:37
阅读次数:
971
简介: SQLite (http://www.sqlite.org/docs.html) 是一个轻量级的关系数据库。iOS SDK 很早就支持了 SQLite,在使用时,只需要加入 libsqlite3.dylib 依赖以及引入 sqlite3.h 头文件即可。但是,原生的 SQLite API 在 ...
分类:
移动开发 时间:
2016-08-09 14:59:39
阅读次数:
210