<p> github地址就不用说了,用来做什么的也不说了,简书上有很多,本文只记录一下用来保存本地聊天IM的记录的一些使用,以及两个可视化软件的配合。</p>
FMDB
1.得到fmdb实例
#define kTestDb @"test.db"
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
NSString *doPath = [docDir stringByAppendingPathComponent:dbName];
FMDatabase *fmdb = [[FMDatabase alloc]initWithPath:doPath];
2.打开数据库
[fmdb open];
3.插入、更新、删除方法
[fmdb executeUpdate:sql];//还有很多其他的更新方法,具体可以参考文档
4.查询方法
FMResultSet *rs = [fmdb executeQuery:sql];
while([rs next]){
[rs intForColum:@"userid"];
}
5.关闭数据库
[fmdb close];
以上是常用的简单操作,对一般的使用已经足够了。
接下来介绍两款可视化的软件,使用都比较简单,配合fmdb使用就可以更快的使用和调试数据库了。
此软件是数据库的可视化操作,navicat mac版也可以。
此款软件是查看真机的沙盒用的,把真机的沙盒里的db文件copy到mac上,再用sqlitestudio打开就可以了。
遇到的问题:DB Error: 1 "unrecognized token: """
解决:此问题表面一看就知道是哪里的字符串需要单引号,但实质上可能除了这个错误以外,还可能是你的sql语句里面有一个中文的空格。最好的办法就是把sql拼接打印出来在sqlitestudio里面去执行,sqlitestudio在语法上也会提示,包括中文的空格等等。
总结:fmdb使用确实比较简单,也可能是因为没有用到很复杂的逻辑,还有Pool、queue等复杂的操作。另外在设计表和model的时候一定要先把所需要使用数据库的地方都罗列出来,再一一对应设计适用的方法。
以上只是初级水平的我捉摸的方法,希望大家除了看一下还是可以多尝试发现更好的方法。