FMDB基础(oc操作sqlite)

FMDB 是对 SQLite API 轻量级二次封装。所以整体使用思路还是类似 SQLite API 的思路。由于 FMDB 是基于 SQLite API 的,所以使用 FMDB 也需要导入 SQLite 的动态库文件。
FMDB 中除了“查询”以外,任何操作都归属于“更新”行为。
接下来我们使用FMDB,首先需要导入sqlite动态库文件
这里写图片描述
这里写图片描述

首先在viewController的viewdidload中启动sqlite以及创建.db数据库文件

- (void)viewDidLoad {
    [super viewDidLoad];

    FMDatabase *db = [FMDatabase databaseWithPath:@"/Users/tarena/Desktop/test.db"];
    self.db = db;
    if ([db open]) {
        NSLog(@"打开成功!");

        if ([db executeUpdate:@"create table if not exists names (name text)"]) {
            NSLog(@"创建表成功!");
        }else NSLog(@"创建表失败");
    }

}

接下来我们在界面中添加4个button,分别对应增删改查4个功能。添加一个click事件,通过tag值区分4个不同的功能。接下来我们来一起看一下如果通过FMDB操作SQLITE.

  case 0://增加数据
        {
            NSString *sql = [NSString stringWithFormat:@"insert into names values ('%@')",self.myTF.text];
            if ([self.db executeUpdate:sql]) {
                NSLog(@"插入数据成功!");
            }else NSLog(@"插入数据失败");
        }
            break;
  case 1://删除数据
        {
            NSString *sql = [NSString stringWithFormat:@"delete from names where name='%@'",self.myTF.text];
            if ([self.db executeUpdate:sql]) {
                NSLog(@"删除数据成功!");
            }else NSLog(@"删除数据失败!");

        }
 case 2://修改数据
        {
            NSString *sql = [NSString stringWithFormat:@"update names set name='%@'",self.myTF.text];
            if ([self.db executeUpdate:sql]) {
                NSLog(@"修改数据成功!");
            }else NSLog(@"修改数据失败!");

        }

查询数据库时需要注意,需要用到一个新的类,FMResultSet, 使用语句executeQuery查询

        case 3://查询数据
        {
            FMResultSet *result = [self.db executeQuery:@"select * from names"];
            while ([result next]) {

                NSString *name = [result stringForColumn:@"name"];
                //如果是年龄需要用intforcolumn
                //int age = [result intForColumn:@"age"];

                NSLog(@"%@",name);
            }


        }
            break;

FMDB的使用需要用到sqlite的基本操作,如果对于嵌套的sql语句有不理解的地方,请参考sqlite基础
http://blog.youkuaiyun.com/lee727n/article/details/71171120

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值