由于新项目中使用的数据库为FMDB,所以得重新学习,特此mark一下,以免忘记,也跟初学的童鞋分享一下学习心得。
1)首先导入FMDB的必要文件:
FMDatabase.h
FMDatabase.m
FMDatabaseAdditions.h
FMDatabaseAdditions.m
FMDatabasePool.h
FMDatabasePool.m
FMDatabaseQueue.h
FMDatabaseQueue.m
FMResultSet.h
FMResultSet.m
为了省去要这些文件,我在附件里打包好了,欢迎使用。
2)打开或者建立数据库:
//NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES)
// NSString *documentDirectory = [paths objectAtIndex:0];
上面两句是获取到文件地址,属于比较官方的,但是因为即使创建数据库成功了,也很难找到它所在路径,所以为了能看到成功的DB文件,documentDirectory用以下方式创建,你们也可随意修改为最容易找到的文件夹就行.
NSString *documentsDirectory=@"/Users/liuyanfeng/Desktop/iosProject/MapPro/MapPro/";
数据库的地址:
NSString *dbPath = [documentsDirectory stringByAppendingPathComponent:@"MapProDB.db"];
打开或者创建数据库,如果MapProDB.db已经存在,则直接打开,如果不存在,就在该目录下创建一个MapProDB.db的数据库:
FMDatabase *db = [FMDatabase databaseWithPath:dbPath] ;
if (![db open]) {
NSLog(@"数据库连接失败");
return;
}
NSLog(@"数据库打开i");
[db close];
这样,数据库测试成功,你可以在刚才设定的目录里找到相应的DB文件。
3) 创建表:创建user的表,两个字段,两个为string类型的username,password:
[db executeUpdate:@"CREATE TABLE User (username text, password text)"];
4)插入数据:
[db executeUpdate:@"INSERT INTO User (username,password ) VALUES (?,?)",@"jaybril",@"123"] ;
5)更新数据:
[db executeUpdate:@"UPDATE User SET Name = ? WHERE Name = ? ",@"jaybril",@"宝贝"];
6)删除数据:
[db executeUpdate:@"DELETE FROM User WHERE Name = ?",@"jaybril"];
update的基本操作就这几个,接下来是queries!
- //返回数据库中第一条满足条件的结果
- NSString *aa=[db stringForQuery:@"SELECT Name FROM User WHERE Age = ?",@"20"];
这样我们就查询返回了一条数据,那当我们想要查询放返回多条数据怎么办呢?不用愁,之前我就提到了FMDB中的另外一个主要的类,FMResultSet,这是一个结果集!返回多条数据时FMDB会将数据放在这个结果集中,然后我们在对这个结果集进行查询操作!很简单。
- FMResultSet *rs=[db executeQuery:@"SELECT * FROM User"];
- rs=[db executeQuery:@"SELECT * FROM User WHERE Age = ?",@"20"];
- while ([rs next]){
- NSLog(@“%@ %@”,[rs stringForColumn:@"Name"],[rs stringForColumn:@"Age"]);
- }
更多的FMResultSet方法有:
intForColumn:
longForColumn:
longLongIntForColumn:
boolForColumn:
doubleForColumn:
stringForColumn:
dateForColumn:
dataForColumn:
dataNoCopyForColumn:
UTF8StringForColumnIndex:
objectForColumn:
具体查看一下类就行了
相关推荐
这是一个数据持久化存储库FMDB在Swift工程中使用的一个经典示例!希望对同行有所裨益!
此demo使用单例使用FMDB对数据库进行增、删、改、查;demo实现详细
当我们在做一个app的收藏页面或者在面对app的数据库时 十分头疼, 那么我在这为大家提供一个FMDB实列模板 希望对家有帮助,它简化了我对数据库的操作
fmdb 是ios开发中对sqlite数据库操作的一个封装库,可快速方便的对sqlite数据进行增删改查等操作。
ios开发,用FMDB数据库开发的一个手机通讯录,支持查询,滑动删除等。
iOS 开发 开源代码 数据库 fmdb 工具类
一个简单的用FMDB实现的ios用户登录Demo
FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来更加面向对象,省去了很多麻烦、冗余的C语言代码 对比苹果自带的Core Data框架,更加轻量级和灵活 提供了多线程安全的...
在ios开发中,除了使用自带的例如sqlite3_open这类自带的方法使用数据库,还可以使用这个第三方类库
ios开发之fmdb操作数据库,对数据进行增删查改等操作
利用第三方库FMDB第三方库写的一个demo,简单操作数据库
FMDB 将 SQLite API 进行了很友好的封装,使用上非常方便,对于那些使用纯 Sqlite API 来进行数据库操作的 app,可以考虑将其迁移到基于 FMDB 上,这对于以后数据库相关功能的开发维护,可以提高不少效率。...
使用fmdb对数据进行增删查改等操作,一个user表以及3个字段
ios开发sqlite的使用,本例子将所有用到的方法都封装在一起,使用非常方便
多线程使用FMDB操作sqlite数据库 对应博客链接http://blog.csdn.net/liuyinghui523/article/details/79483963
操作系统:LInux、IOS、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。 网络与通信:数据传输、信号处理、网络协议、网络与通信硬件、网络安全网络...
2015年最新FMDB代码,可以更好地应用在苹果64位和32位系统上更好地兼容性,有利于ios开发中数据库的使用
使用FMDB开发 iphone,ipad上的数据库SQLite