很早之前就接触Sqlite数据库,但是之前对数据库操作未使用任何第三方库,只是实现基本的增、删、改、查功能,自己对着一本iPhone开发入门级的书籍写了一个类,基本能实现上述四个功能。最近在开发一个软件,由于是一个本地应用,经过再三思量,最好决定使用sqlite数据库存储数据。但是此次数据有点复杂,以前写的对数据库操作的类已经完全不能满足本次开发的需求,故上网找了下FMDB这个第三方库,该库把对数据库操作全部封装,使我们对于复杂的API视而不见,只需要调用接口,而且FMDB支持数据库事务处理以及支持ARC和非ARC,故好好研究了下FMDB的用法。

FMDatabase *fmDatabase = [FMDatabase databaseWithPath:dbPath];  //dbPath 为数据库路径,如果该路径不存在该数据库,则会自动创建一个数据库

对数据库操作,首先要打开数据库    [fmDatabase open] ,这里要提醒的是,频繁打开、关闭数据库很耗时。

[fmDatabase tableExists:tableName];   //tableName 表格名 判断数据库中是否存在该表

1. 创建表

CREATE TABLE project (projectName text,prototypeCount integer,iconData Binary,projectId integer)        //创建project表SQL 语句

[fmDatabase executeUpdate:SQL]  //SQL sql语句, 创建表格,FMDB中执行SQL语句,除了执行查询语句用executeQuery外,其它都用 executeUpdate

2. 向表格插入数据

[fmDatabase executeUpdate:@"INSERT INTO project (projectName, prototypeCount, iconData, projectId) VALUES (?,?,?,?)",project.projectName,[NSNumbernumberWithInteger:project.prototypeCount],project.iconData,[NSNumbernumberWithInteger:project.projectId]];

//注意,此处变量都为对象,起初传入int类型,直接crash

3. 查询数据

[fmDatabase executeQuery:@"SELECT * FROM project"]

转载于:https://www.cnblogs.com/keviniptv/p/FMDB.html

Sqlite3数据库之第三方库FMDB学习心得相关推荐

  1. Python第三方库pygame学习笔记(一)

    Pygame Python最经典的2D游戏开发第三方库,也支持3D游戏开发 Pygame适合用于游戏逻辑验证.游戏入门及系统演示验证 Pygame是一种游戏开发引擎,基本逻辑具有参考价值 pygame ...

  2. 什么是python的第三方库_python学习(十九)常见的第三方库

    介绍几个python中常见的第三方库. Pillow Pillow简称PIL,是python中常用的图形图像处理模块.写一个简单的例子 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

  3. python第三方库之学习pyserial库--串口通信

    pyserial串口通信库 1.安装pyserial库 2.填写串口参数的注意事项 3.简单封装一下 4.碰到的bug 1.安装pyserial库 pip install pyserial versi ...

  4. iOS中SQLite持久化存储第三方库FMDB

    @interface HMShopTool : NSObject + (NSArray *)shops; + (void)addShop:(HMShop *)shop; @end @implement ...

  5. python第三方库之学习flask-restful

    flask-restful 前言 一.安装 二.flask-restful初体验 前言 为什么要用Flask-restful? RESTful API返回的不是HTML,而是机器能直接解析的数据 随着 ...

  6. Python常用第三方库

    Python常用第三方库 一. 文件读写 二.网络抓取和解析 三.数据库连接 四.数据清洗转换 五.数据计算和统计分析 六.自然语言处理和文本挖掘 七.图像和视频处理 八.音频处理 九.数据挖掘/机器 ...

  7. python的标识库和第三方库_Python 标准库、第三方库

    Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写.网络抓取和解析.数据连接.数清 ...

  8. python concat函数 多张表_最全Python数据工具箱:标准库、第三方库和外部工具都在这里了 - Mr_YJY...

    导读:Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写.网络抓取和解析.数据连接 ...

  9. python升级第三方库_python一键升级所有第三方库

    import pip from subprocess import call for dist in pip.get_installed_distributions(): call("pip ...

最新文章

  1. ubuntu java反编译,[原创]Ubuntu下简单配置反编译工具以及其开发环境
  2. excel文件直接双击打不开_实用电脑技巧excel 电脑办公技巧500招 高级电脑技巧
  3. Linux 文本界面转到图形界面
  4. SQL 创建索引的作用以及如何创建索引
  5. mysql常用语句整理
  6. SQL Server Profiler (SQL跟踪器)的简单使用
  7. Effective Java之在细节消息中包含能捕获失败的消息(六十三)
  8. windows和ubuntu双系统设置开机默认系统
  9. Leetcode--141. 环形链表
  10. mybatis工作原理_万字好文!MyBatis 的工作原理,你了解过吗?
  11. Goodfellow新研究:对抗样例让机器与人类双双上当 | 论文
  12. Android字体加粗,UI小姐姐说太粗了,解决办法
  13. Android TextView字体样式设置
  14. 利用hive完成阿里天池大数据音乐预测比赛数据处理工作
  15. AutoCAD .Net 不同文档间复制对象
  16. 职场人必备的6款实用办公app,每一款都是心头爱
  17. 想知道如何将PDF合并成一个?这里有三个简单的方法分享
  18. unity gizmo绘制圆形帮助调试
  19. 质因数的分解(java)
  20. Struts2 学习记录(4)

热门文章

  1. MIS开发中.net Framework的打印功能
  2. webconfig加密
  3. matlab最小分类错误全局二值化算法
  4. 【Qt】通过QtCreator源码学习Qt(十一):Utils::Icon,根据不同主题、不同状态变换图标
  5. android倒计时实现方法,Android实现倒计时方法汇总
  6. java日期比较大小_java日期大小比较
  7. 10 ping不通widwos7 windwos_弱电老司机总结的10种视频监控系统故障解决方法,学会,事半功倍...
  8. 唯一索引和普通索引的选择
  9. Java学习总结:14
  10. Java项目:星际争霸游戏(java+swing+awt界面编程+IO输入输出流+socket+udp网络通信)