FMDB 的简单说明
FMDB是对sqlite进行封装的第三方库,对于其基础的知识网络中已经有了数不胜数的说明,这里就不在重复的说明。本文的主要目的是了解FMDB的基本操作:
1)通过手动或cocopads添加FMDB的第三方库。
2)在工程中添加头文件:
#import <FMDatabaseAdditions.h>
#import <FMDatabaseQueue.h>
补:本案例只有有user一个表 表中有列三个:姓名,年龄,性别。
*路径
- (NSString *)databasePath
{
NSString *path =[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES)objectAtIndex:0];
NSString *dbPath = [pathstringByAppendingPathComponent:@"user.db"];
return dbPath;
}
3) 插入
FMDatabase *database = [FMDatabasedatabaseWithPath:[selfdatabasePath]]; //根据路径找到数据库,如果不存在则自动创建一个
if (![database open]) { //判断数据库是否打开
NSLog(@"open database failed");
return;
}
if (![databasetableExists:@"user"]) { //判断是否存在表user,如果不存在就创建表
[database executeUpdate:@"create table user (id integer primary key autoincrement not null,name text,age text,sex text)"];
}
BOOL insert = [databaseexecuteUpdate:@"insert into user(name,age,sex) values (?,?,?)",_name.text,_age.text,_sex.text];//通过sql语句来进行操作
if (insert) {
NSLog(@"保存成功");
}else
{
NSLog(@"保存失败");
}
[database close];
4) 删除
FMDatabase *database = [FMDatabasedatabaseWithPath:[selfdatabasePath]];
if (![databaseopen]) {
return;
}
BOOL delete = [databaseexecuteUpdate:@"delete from user where name = ?",@""];
if (delete) {
NSLog(@"删除成功");
}else
{
NSLog(@"删除失败");
}
[database close];
5) 更新
FMDatabase* database=[FMDatabase databaseWithPath:[self databasePath]];
if (![database open]) {
return;
}
BOOL update=[database executeUpdate:@"update user set age = ? where name= ?",@"20",@"chen"];
if (update) {
NSLog(@"更新成功");
}else {
NSLog(@"更新失败");
}
[database close];
6) 查询
FMDatabase *database = [FMDatabase databaseWithPath:[self databasePath]];
if (![database open]) {
return;
}
FMResultSet *result = [database executeQuery:@"select *from user"];
while ([result next]) {
NSString *name = [result stringForColumn:@"name"];
NSLog(@"name = %@",name);
}
[database close];
FMDB 的简单说明相关推荐
- FMDB的简单应用(4篇)
转截地址:http://blog.csdn.net/demon1900demon/article/details/23602535 转截地址:http://www.mobiledevor.com/po ...
- FMDB数据库简单使用
上一篇文章sqlite3原生数据库简单使用 介绍了sqlite3原生数据库的简单使用,由于执行语句都是C语言写的,导致看起来操作非常不方便,因此便根据数据库封装了一个很好用的第三方框架,以下是他的简单 ...
- IOS数据存储 之WCDB (一)
IOS数据存储 之WCDB (一) 1. WCDB 简介 1.1 使用WCDB框架3大优势 1.2 WCDB 的一些基础概念 1.2.1 类字段绑定(ORM) 1.2.2 WINQ(WCDB语言集成查 ...
- ocbase 数据库 蚂蚁_iOS开发数据库篇—FMDB简单介绍
iOS开发数据库篇-FMDB简单介绍 一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来 ...
- iOS FMDB之FMDatabaseQueue(事物与非事物)
事物与非事物 事物是一个并发控制的基本单元,所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位. 事物与非事物,简单的举例来说就是,事物就是把所有的东西打包在一 ...
- 数据库操作(使用FMDB)
iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB.PlausibleDatabase.sqlitepers ...
- FMDB:中的用法介绍
2019独角兽企业重金招聘Python工程师标准>>> FMDB:我的SQLite救星 好滴-离上次发文又给他隔了三个月,为什么咧??因为林杯我很忙,这三个月我跑去订婚.结婚.归宁外 ...
- (iOS)sqlcipher和FMDB的使用总结(原创)
写这篇文章的原因是之前接触到了关于sqlite数据库加密的问题,一般数据库加密,无非是数据加密和数据库文件加密,当然数据库文件加密对手机效率可能更高一些. 下面就讲一下,自己对sqlcipher和fm ...
- sqlite第三方类库FMDB的使用
FMDB是ios平台下解析sqlite的第三方数据库管理框架,使用非常方便,而且提供了多线程安全的数据库操作,相比coredata来说更加灵活和轻量级. fmdb主要有三个类别: fmdatabase ...
最新文章
- java如何重写_java中如何重写一个方法
- .net程序员的盲点(八):泛型
- 【Android 界面效果10】Android中View,ViewGroup,Window之间的关系
- PIT和TestNG突变测试简介
- php pdo 预处理删除,PHP PDO扩展整理,包括环境配置\基本增删改查\事务\预处理
- SQL Server 2016的新功能–临时数据表
- struts2 拦截器_Struts2 execAndWait拦截器示例,用于长时间运行的动作
- 八大排序算法思想介绍
- 西门子博图使用Trace功能
- Visio如何绘制数据流图
- 3DMax游戏建模常用基本命令
- OpenCV学习 之 IplImage*遍历每个像素点
- Nlp预处理方法(BPE Byte pair encoding、Normalization、Lemmatisation、Stemming…)
- PCIe Expansion Roms
- 存储容量及相关计算单位
- Django 千锋培训读书笔记
- matlab怎么解非满秩矩阵,在numpy或matlab中由满秩非方矩阵求可逆方阵
- 卡片跳转快应用指定页面,如何点返回直接退出快应用回到卡片
- SaaS、PaaS、LaaS以及之间的区别
- python中search函数用法_查找匹配函数FIND和SEARCH的基本用法
热门文章
- 2、Lctech Pi(F1C200S)开发环境搭建(CherryPi,Mangopi,F1C100S)
- R语言基于库克距离统计量识别(Cook’s distance)对于回归模型性能或者预测影响(Influential observation)很大的观测样本、可视化库克距离并添加阈值线识别影响力大的样本
- 删除重复文件的脚本代码
- 【Hadoop HA】搭建Hadoop HA的详细教程
- [渝粤教育] 西南科技大学 投资项目评估 在线考试复习资料
- veins中实现rsu与车辆通信
- 酷睿i7和i5对计算机专业要求,英特尔酷睿i5和i7处理器哪个好 英特尔酷睿i5和i7处理器详细介绍...
- xDM Land Patterns 封装工具使用笔记
- JFinal配置说明
- 【LeetCode 1125】 Smallest Sufficient Team