一、概述
FMDB是iOS平台的SQLite数据库框架,用OC的方式封装了SQLite的C语言API,使用起来更加面向对象,省去了冗余的C语言代码,比苹果自家的CoreData框架更加灵活,提供了多线程安全的数据库操作方法,防止才出现数据混乱现象。
FMDB有三个核心类:FMDatabase(用来执行SQL语句,一个FMDBDatabase对象代表一个单独的SQLite数据库);FMResultSet(执行查询后的结果集);FMDatabaseQueue(多线程中执行多个查询或更新)。
二、示例代码
(1)首先导入libsqlite3.tbd库文件并且在github上(https://github.com/ccgus/fmdb)下载FMDB框架导入工程
(2)创建数据库路径
文件路径有三种情况:1.具体文件路径(如果不存在会自动创建);
2.传入的参数是空字符串@“”,会在临时目录下创建这个数据库,当FMDB断开连接的时候会删除这个数据库文件。
3.传入的参数是NULL,会创建一个在内存中的数据库,断开连接时数据库文件被删除。
//获取Document路径
NSString *doc = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject];
//在此路径下新建一个文件
NSString *fliepath = [doc stringByAppendingPathComponent:@"student.sqlite"];
(3)创建数据库
//创建一个数据库
FMDatabase *database = [FMDatabase databaseWithPath:fliepath
];