使用FMDB最新v2.3版本教程
使用FMDB教程

本教程针对于第一次接触开源库FMDB的同胞,从如何下载源码如何导入工程如何创建数据库如何写增删改查开始.使用的时最新版本的FMDB v2.3.
此教程开始日期为 2014.5.5
Preparation - 准备工作
首先,你得需要去下载源码 https://github.com/ccgus/fmdb
找到页面中的如是地方后下载ZIP包.

解压ZIP包后找到src文件夹

进入文件夹后,将文件夹extra以及fmdb拷贝到你新建的工程文件(默认开启ARC,本人已经不玩non-ARC了^_^)当中.


然后导入数据库的静态库.

之后在***.pch文件中导入头文件供全局使用

此刻已经完成了FMDB的配置以及导入.
Usage - 使用
为了教程的最大简洁性,本人连controller都不会创建,全部都在AppDelegate.m文件中完成所有的基本功能教程:).
请修改AppDelegate.m文件为如下形式:

好了,正式开始使用,首先创建数据库文件,创建一个表并插入一条数据:

至少已经执行成功了,我们来查看下沙盒中是否有创建好的数据库文件.

双击YouXianMing.db,发现数据被插进去了哦.

再次执行一遍程序,后打印如下:

这很正常,因为你已经创建了一个表了嘛:).
修改下源码再次插入一条记录:

检查一下:

以上就完成了基本的创建表以及插入两条记录的任务.
我们来执行查询操作.

使用起来就是这么方便呢.
查询操作的方法有着如下几种:

如何使用请自己查询文档,这也是我们作为程序员必须具备的素质,不能什么时候都靠别人哦.
我们来执行更新操作.


请注意,上面的更新方法并不推荐,本人只是为了最大限度的便于读者理解而直接这么写的,实际过程中是绝对不推荐这么玩的.
以下是官网推荐的一些使用方法:

增,改,查都有了,就差删除了,来试试如何删除吧.


你或许有一个疑问,为何删除属于 excuteUpdate 方法,这个很简单,请看官方文档:
Executing Updates
Any sort of SQL statement which is not a SELECT statement qualifies as an update. This includes CREATE, UPDATE, INSERT, ALTER, COMMIT, BEGIN, DETACH, DELETE, DROP, END, EXPLAIN, VACUUM, and REPLACE statements (plus many more). Basically, if your SQL statement does not begin with SELECT, it is an update statement.
任何一条SQL语句,如果不是SELECT,那就是update了.可用于update的包括了CREATE, UPDATE, INSERT, ALTER, COMMIT, BEGIN, DETACH, DELETE, DROP, END, EXPLAIN, VACUUM以及REPLACE.如果你的SQL语句不是做查询用的,那就是update语句,需要使用update系列的方法:).
Conclusion - 结论
FMDB就这么结束了么?差不多吧,增删改查创建表创建数据库都包含了,剩下的就是使用细节,诸如线程安全,如何操作了,本篇教程属于入门级别,能让你会用FMDB,至于如何详细的使用,就需要你自己细致的查看官方文档了.转载请注明出处 http://www.cnblogs.com/YouXianMing/
不提供源码是为了让读者自己去敲代码而已,截图已经把注释写得非常清晰了,模仿是最好的老师:)
使用FMDB最新v2.3版本教程的更多相关文章
- 爬虫--selenium之 chromedriver与chrome版本映射表(最新至v2.46版本chromedriver)
本文主要整理了selenium的chromedriver与chrome版本映射表,并且持续更新中..... 1.selenium之 chromedriver与chrome版本映射表(最新至v2.46版 ...
- RDIFramework.NET V2.9版本多语言的实现
RDIFramework.NET V2.9版本多语言的实现 现在是国际化时代,软件也不能落后.一个公司里很可能会有老外,也可能有台湾的朋友,他们用软件的习惯都不一样,若同样一个软件同时能适应多种语言文 ...
- RDIFramework.NET V2.9版本 WinFom部分新增与修正的功能
RDIFramework.NET V2.9版本 WinFom部分新增与修正的功能 转眼间RDIFramework.NET框架走了快6个年头了,随着一个版本一个版本的升级改造,现在已经越来越完美了.使 ...
- RDIFramework.NET ━ .NET快速信息化系统开发框架钜献 V2.9 版本震撼发布
RDIFramework.NET ━ .NET快速信息化系统开发框架钜献 V2.9 版本震撼发布 全新体验.全新感觉.2015钜献! 继上个版本“RDIFramework.NET V2.8版本发布”5 ...
- cocos引擎v2.1版本android 编译问题解决办法 (cocos2d-x-3.4rc1)
下载了最新版的cocos v2.1.2beta,使用cocos.exe来创建项目,而且在最下方的附件功能里还勾选了“支持x86架构cpu”这个选项,导致使用build_native.py编译不通过,以 ...
- go-wingui 2018 全新 v2.0 版本发布,包含重大更新!
go-wingui 2018 全新 v2.0 版本发布,包含重大更新!使用新版CEF内核Chromium 63.0.3239.109,页面可以使用最新的css3,html5技术.使用delphi7重写 ...
- 最新Android系统版本与API等级对应关系表
最新Android系统版本与API等级对应关系表 从Android官网拷过来的,方便查阅... 官网地址:https://developer.android.com/guide/topics/mani ...
- 微信快速开发框架(六)-- 微信快速开发框架(WXPP QuickFramework)V2.0版本上线--源码已更新至github
4月28日,已增加多媒体上传及下载API,对应MediaUploadRequest和MediaGetRequest ------------------------------------------ ...
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布
(新年巨献) RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布 历时数月,RDIFramework.NET V2.8版本发布了,感谢大家的支持. RDIFram ...
随机推荐
- VR内容是如何制作的!
VR全景视频作为一种新型的视频方式,其震撼效果是毋庸置疑的.目前市场上的VR全景视频也不在少数,越来越多的人能够欣赏到精彩的内容. 首先呢, VR内容场景的呈现分为两种情况: 1.实景拍摄 2.3D建 ...
- Mysql+innodb数据存储逻辑
Mysql+innodb数据存储逻辑. 表空间由段,区,页组成 ibdata1:共享表空间.即所有的数据都存放在这个表空间内.如果用户启用了innodb_file_per_table,则每张表内的数据 ...
- [Android]Caused by: java.lang.IllegalArgumentException: Service not registered.md
Caused by: java.lang.IllegalArgumentException: Service not registered: org.diql.aidldemo.MainActivit ...
- Hosts文件说明
Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Host ...
- ng-value中格式化日期
ng-value="conferenceinfo.create_time | date:'yyyy-MM-dd'"
- WAMP环境配置-Apache服务器的安装
一.下载 下载地址:http://httpd.apache.org/ 在这里就可以下载想下载的版本了 二.安装 我这次环境配置安装的是Apache-2.4.23版本! (最近我在反复安装PHP的时候出 ...
- Backbone之温故而知新1-MVC
在忙碌了一段时间之后,又有了空余时间来学习新的东西,自从上次研究了backbone之后,一直不得入门,今天有时间有温故了一次,有了些许进步在此记录下, 在开始之前,不得不提一下我的朋友给了我“豆瓣音乐 ...
- spring整合springmvc和mybatis
1.spring 1.1 jar包 1.2 spring基本配置,包扫描注解 <!-- 自动扫描 --> <context:component-scan base-package=& ...
- mybatis学习之动态sql
mybatis的动态sql语句很强大,在mapper映射文件中使用简单的标签即可实现该效果,下面一个个记录: 1.select查询 简单的select类似如下: <select id=" ...
- webservice随记
WebService:跨平台.系统.跨语言间相互调用 CXF:Axis(Apache)-> Axis2(Apache)XFire -> CXF(Celtrix + XFire)(Apach ...