数据库:好用的第三方FMDB

原创 2015年11月21日 19:19:42

系统的数据库使用起来并不是很方便,比较繁琐;比较优秀的,被大量使用的第三方数据库当属 FMDB; FMDB是一个封装较好的数据库管理工具 ,以下是它的详细用法:

创建:

1.我将数据库的创建路径写成了一个宏定义 : 

#define DBPATH [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES).firstObject stringByAppendingString:@"MyDatabase.db"]

为稳妥起见,在appdelegate中创建数据库:

我在这里写成了一个方法:

#pragram  mark -------- 创建数据库

- (void)createDBAndTable {

    FMDatabase *db = [FMDatabase databaseWithPath: DBPATH];

    if ([db open]) {

        NSString *sql = [NSString stringWithFormat:@"create table %@(title text, access_url text, pictureURL text)",CollectionList];

        BOOL res = [db executeUpdate:sql];

        if (!res) {

        }else{

        }

    }

}


2.往数据库中添加数据


- (void)insertData{

    FMDatabase *db = [FMDatabase databaseWithPath:DBPATH];

    if ([db open]) {

        NSString *insertSql = [NSString stringWithFormat:@"insert into %@ (title, access_url, pictureURL) values (?, ?, ?)", CollectionList];

        [db executeUpdate:insertSql,self.model.title,self.model.access_url,self.model.pictureURL];

    }

}


3. 从数据库删除数据

#pragma mark --------------  FMDB 删除数据

-  (void)deleteData{

    FMDatabase *db = [FMDatabase databaseWithPath:DBPATH];

    if ([db open]) {

        NSString *sql = [NSString stringWithFormat:@"delete from %@ where title = ?",CollectionList];

         [db executeUpdate:sql,self.model.title];

     }

    [db close];

}

4. 遍历数据库中的数据

#pragma mark --------------  FMDB 删除数据

- (void)readerData{

    FMDatabase *db = [FMDatabase databaseWithPath:DBPATH];

    if ([db open]) {

        NSString *sql = [NSString stringWithFormat:

                         @"SELECT * FROM %@",CollectionList];

        FMResultSet *result = [db executeQuery:sql];

        button1.selected = NO;

        while ([result next]) {

            button1.selected = YES;

        }

    }

    [db close];

}



需要注意几点:

在创建数据库的时候,在其它需要使用数据库的地方,可以通过路径获得数据库,从而对数据进行操作; 我们可以在一个工程中创建一个数据库,在这个数据库中创建多个表,我在创建表的时候,没有设置表的key值,但会自动分配一个,最好还是自己设置一个key值;


数据库的操作,就是增,删,改,查四种情况,FMDB使得数据操作变得极为简便;


如有错误,请指正~~~~




ios关于数据库第三方框架FMDB进阶用法

概述 上一篇讲述了FMDB的最基本用法,用到的例子是缓存一张学生表,表里面都是些简单的字段。然而我们在实际项目开发中,大都使用FMDB缓存数据列表,比如网易新闻的新闻列表,QQ动态列表等。遵循M...
  • CloudyBird
  • CloudyBird
  • 2016年03月23日 14:50
  • 1150

iOS中FMDB简介

1、什么是FMDB  1.   iOS中原生的SQLite API在使用上相当不好用,在使用时,非常不便。于是,就出现了一系列将SQLite API进行封装的代码库,例如FMDB、    Plaus...
  • swanzhu
  • swanzhu
  • 2015年09月16日 19:41
  • 969

IOS开发笔记之常用的第三方库(太多了。)

图像: 1.图片浏览控件MWPhotoBrowser        实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进...
  • JustTellU
  • JustTellU
  • 2015年08月11日 10:53
  • 1668

iOS数据库的使用方法(FMDB)

一、下面简单的介绍一下FMDB的相关信息: 1.FMDB是iOS平台SQLite数据库框架,以OC的方式封装了SQLite的C语言的API 2.在诸多的数据库框架中,为什么FMDB能够如此的受开发...
  • u011452278
  • u011452278
  • 2015年11月04日 14:45
  • 626

数据库操作(使用FMDB)

iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便。于是,就出现了一系列将SQLite API进行封装的库,例如FMDB、PlausibleDatabase、sqlitepers...
  • mr_liu_easy_ios
  • mr_liu_easy_ios
  • 2016年05月24日 09:38
  • 3183

iOS FMDB数据库加密相关

sqlite应用几乎在所有的App都能看到,虽然我们的数据存储在沙盒里面,一般情况下无法拿到,但是iOS管理软件(如:iFunBox)可以读取到应用程序沙盒里面的文件,为了提高数据的安全性,我们需要考...
  • qq_33778243
  • qq_33778243
  • 2016年01月18日 20:52
  • 1158

iOS开发(OC)——FMDB数据库的使用

在开发的过程中,难免会使用到数据库来存储和处理数据。iOS除了自带的coreData数据库外,还支持第三方FMDB数据库。FMDB数据库支持SQL语句,适合中小型数据库的存储和处理,深受中小型企业的青...
  • liumude123
  • liumude123
  • 2016年05月15日 14:19
  • 1194

FMDB的一些特别使用

1.用途是否有过这样的经历:新版本上线后发现有个严重的bug,可能会导致crash率激增,可能会使网络请求无法发出,这时能做的只是赶紧修复bug然后提交等待漫长的AppStore审核,再盼望用户快点升...
  • bolu1234
  • bolu1234
  • 2016年08月11日 15:36
  • 530

FMDB性能优化问题。使用FMDB事务批量更新数据库速度问题。(亲测可以呀---740条数据用和不用事务效率差别20倍+)

今天比较闲看到大家在群里讨论关于数据库操作的问题,其中谈到了“事务”这个词,坦白讲虽然作为计算机专业的学生,在上学的时候确实知道存储过程、触发器、事务等等这些名词的概念,但是由于毕业后从事的不是服务器...
  • cos_sin_tan
  • cos_sin_tan
  • 2016年03月29日 10:53
  • 1281

iOS开发数据库篇—FMDB简单介绍

iOS开发数据库篇—FMDB简单介绍 一、简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API ...
  • l863784757
  • l863784757
  • 2015年02月10日 10:08
  • 5845
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据库:好用的第三方FMDB
举报原因:
原因补充:

(最多只允许输入30个字)