IOS FMDB 使用
IOS开发中如果用Sqlite库来写数据库会比较麻烦,FMDB是对sqlite的封装,有更加友好简洁的的语句。
1,FMDB下载地址:FMDB下载地址
2,导入src下的文件,使用时 #import "FMDatabase.h"
3,创建数据库
#define kDocDir [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]
#define dbPath [kDocDir stringByAppendingPathComponent:@"test.db"]
FMDatabase *db = [FMDatabase databaseWithPath:dbPath] ;
if (![db open]) {
NSLog(@"Could not open db.");
[db close];
}
4,创建表table1,三个字段id是整形,name是字符串,image是二进制的。
NSString *sqlStr =@"CREATE TABLE table1 (id integer, name text, image blob)";
BOOL res = [db executeUpdate:sqlStr];
if (!res) {
NSLog(@"error when creating db tabletable1");
[db close];
}
5,插入数据
int idvalue;
NSString *name;
NSData *data;
sqlStr = @"insert into table1 values (?,?,?)";
res = [db executeUpdate:sqlStr,idvalue,name,data];
if (!res) {
NSLog(@"error when insert intotable1");
[db close];
}
插入语句请不要这么写:
sqlStr = [NSString stringWithFormat:@"insert into table1 values (‘%@’,'%@','%@')",idvalue, name, data];
res = [db executeUpdate:sqlStr];
if (!res) {
NSLog(@"error when insert intotable1");
[db close];
}
这样子写的话二进制的data将不会保存到表里面。
6,查询数据
FMResultSet *s = [db executeQuery:@"SELECT * FROM table1"];
while ([s next]) {
int idvalue =[s intForColumn:@"id"];
NSString *name=[s stringForColumn:@"name"];
NSData *data=[s dataForColumn:@"image"];
}
IOS FMDB 使用相关推荐
- iOS FMDB之FMDatabaseQueue(事物与非事物)
事物与非事物 事物是一个并发控制的基本单元,所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位. 事物与非事物,简单的举例来说就是,事物就是把所有的东西打包在一 ...
- iOS FMDB官方使用文档 G-C-D的使用 提高性能(翻译)(转)
由于FMDB是建立在SQLite的之上的,所以你至少也该把这篇文章从头到尾读一遍. 与此同时,把SQLite的文档页 http://www.sqlite.org/docs.html 加到你的书签中. ...
- ios FMDB数据库添删改查应用
本文原创,转载请注明出处! 哦吼吼,又研究了几天,把FMDB这个封装好的数据库搞定了,写了个简单的例子,基于FMDB的添删改查操作,界面很一般了,代码可能比较乱,希望不要伤了各位的眼睛.依旧是纯代码实 ...
- ios mysql数据库查询语句_ios fmdb数据库查询语句
iOS开发数据库篇-FMDB简单介绍 iOS开发数据库篇-FMDB简单介绍 一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语 ...
- fmdb和mysql的区别_fmdb数据库
FMDB/SQLCipher数据库加解密,迁移 sqlite应用几乎在所有的App都能看到,虽然我们的数据存储在沙盒里面,一般情况下无法拿到,但是iOS管理软件(如:iFunBox)可以读取到应用程序 ...
- rancher添加私有仓库_CocoaPods搭建私有库
前言 iOS组件化开发很重要的一个技术点:CocoaPods私有库的搭建.而且最近答应一个网友要写一篇关于<CocoaPods搭建私有库>相关的文章,于是结合网上的一些blog和实际操作, ...
- oracle中多条数据的增查,Oracle数据库,数据的增、删、改、查
oracle数据库中,数据的增.删.改.查,通过SQL语句实现 SQL:结构化查询语言: 特点:不区分大小写:字符串用单引号引起来:语句结束用分号表示结束: 行注释,在语句的最前面加"--& ...
- iOS数据库操作之FMDB
SQLite一种轻量级关系数据库,在嵌入式系统中使用比较广泛. 在iOS中使用SQLite需要添加库libsqlite3.0.dylib,并引入头文件#import <sqlite3.h> ...
- 【iOS数据持久化】数据库(SQLite.swift)和FMDB
数据持久化之SQLite数据库(SQLite.swift使用) 一. 简介 SQLite是一款轻型的嵌入式数据库,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就足够了.它的处理速 ...
最新文章
- linux下使用inotify实时监控文件变更,做完整性检查
- docker-compose部署nginx,挂载外置配置文件及项目
- goland go test_Go单元测试实践一,快速上手
- SQL:两种获取时间类型日期部分的方法
- 手机端与pc端页面html5,浅谈pc和移动端的响应式的使用
- 创新者的窘境 PDF ——带完整书签
- 使用H-lua框架制作魔兽争霸地图(8-物编-物品绑定技能篇1)
- Python实现伽马矫正
- 幼儿园计算机信息技术培训总结,幼儿园教师信息技术培训总结
- Windows XP/2003序列号更换工具 1.0
- ZOJ-3939 The Lucky Week
- 八部众---走出软件作坊:三五个人十来条枪 如何成为开发正规军(二十三)
- uniapp之自定义顶部样式
- Ta,两年拿下了10亿美金
- sublime php 代码校验,Sublime Text下配置SublimeLinter进行PHP代码检查
- 算法的时间与空间复杂度(精细+举例)
- remap中的xmap,ymap详解
- 企业公众号做内容输出有哪些要点
- 【阅读】为何爱会伤人?
- 高中计算机多媒体技术应用教案,高中信息技术 多媒体技术应用教案 教科版选修.pdf...
热门文章
- IOS开发高手课第三篇 App Auto Layout 是怎么进行自动布局的,性能如何?
- Admin - 验证列表 ValidateList<E>
- Python文件处理os模块介绍 -*- Python基础知识12 -*-
- 保障出行安全|科力锐助力长沙黄花国际机场灾备建设
- 取消IE8打开HTTPS带图片内容后提示安全警告
- 华为云ModelArts文本分类–外卖评论(附详细图解)
- 模特赛马java课程设计_Thinking in Java---Concurrent包下的新构件学习+赛马游戏仿真...
- 申请一个免费美国手机号码
- opencv +Hog + SVM 车辆检测
- Theano2.1.12-基础知识之使用GPU