FMDB数据库简单使用

上一篇文章sqlite3原生数据库简单使用 介绍了sqlite3原生数据库的简单使用,由于执行语句都是C语言写的,导致看起来操作非常不方便,因此便根据数据库封装了一个很好用的第三方框架,以下是他的简单操作

- (void)viewDidLoad
{
    [super viewDidLoad];
	NSLog(@"%@",NSHomeDirectory());
    NSString *path = [NSHomeDirectory()stringByAppendingPathComponent:@"Documents/database.sqlite"];
    //根据路径创建了一个数据库操作对象(并没有创建数据库)。
    _db = [[FMDatabase alloc]initWithPath:path];
    //打开数据库(如果不存在就创建并打开)
    if ([_db open])
    {
        NSLog(@"打开成功!");
    }
    else
    {
        NSLog(@"打开失败!");
    }
}

//创建一张表
- (IBAction)creatTableClick:(UIButton *)sender
{
    //executeUpdate(增、删、改) 执行一段sql语句
    [_db executeUpdate:@"CREATE TABLE IF NOT EXISTS people (peopleID INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,age INTEGER)"];
}

//插入一条数据
- (IBAction)insertDataClick:(UIButton *)sender
{
    NSString *sql = [NSString stringWithFormat:@"INSERT INTO people (name,age)VALUES('%@',%lu)",_nameField.text,_ageField.text.integerValue];
    [_db executeUpdate:sql];
    _nameField.text = @"";
    _ageField.text = @"";
}

//搜索所有联系人
- (IBAction)selectAllDataClick:(UIButton *)sender
{
    //executeQuery  查询数据库
    //FMResultSet 结果集,查询的结果都在结果集当中
    FMResultSet *set = [_db executeQuery:@"SELECT * FROM people"];
    //next 方法 进入下一行数据,如果有下一行数据,返回YES,没有下一行数据返回NO
    while ([set next])
    {
        //intForColumn       取出当前行某列的整形数据
        //intForColumnIndex  取出某列的整形数据
        NSInteger peopleID = [set intForColumn:@"peopleID"];
        NSString *name = [set stringForColumn:@"name"];
        NSInteger age = [set intForColumn:@"age"];
        NSLog(@"%lu--------%@-------%lu",peopleID,name,age);
    }
    //关闭结果集
    [set close];
}


  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值