美文网首页iOS
FMDB使用事项

FMDB使用事项

作者: 小豆子__ | 来源:发表于2018-03-27 14:57 被阅读0次

    FMDB使用事项

    1.创建数据库

    #import "FMDatabase.h"
    

    引用 FMDB文件,我下载的这个FMDB中所有的引用已经集成在这一个文件中了

    NSString * documentPath =[NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    

    首先获取document文件夹位置,据说是应为iOS只有这个文件才能放东西,我随便写的绝对路径貌似没有用

    NSString * realPath = [documentPath stringByAppendingPathComponent:@"test.sqlite"];
    

    这里设定数据库的名字

     FMDatabase * db = [FMDatabase databaseWithPath:realPath];
    

    这个时候,就已经实例化了一个DB,也相当于拿到了数据库的操作对象
    这里提醒下各位,记住这个地址,防止后面应为数据库的名称和路径导致操作失败,

    2.打开数据库

    [db open]
    NSString * sqlimage = @"create table Image (ID int primary key AUTO_INCREMENT ,ReadingDetailID varchar(200) null , photo varchar(200) null ) ";
    BOOL res = [db executeUpdate:sql];
    

    3.操作数据库

    执行创建表单操作,使用 executeUpdate这个函数,这个函数是用来更新数据库的,包括插入和更新,返回BOOL类型,很便于操作

    NSString * arrsql =[NSString stringWithFormat: @"select * from MeterRead where ReadingDetailID = %@ ",self.arrDown[i][@"ReadingDetailID"]];
    FMResultSet * rs = [db executeQuery:arrsql];
    使用executeQuery用来查询,返回的是一个FMResultSet ,
         while ([rs next]) {
         NSDictionary * meterdic = @{@"ReadingDetailID":[rs stringForColumn:@"ReadingDetailID"],
                                     @"UserWaterMeterCode":[rs stringForColumn:@"UserWaterMeterCode"],
                                     @"UserName":[rs stringForColumn:@"UserName"]};
         [self.arrMeterRead addObject:meterdic];
         }
    

    大家都看到了把,这个FMResultSet自带的方法中有stringForColumn这种函数来取指定数值,如果我们需要返回的全部数据,这样是很不方便的, resultDictionary他有这种方式,直接转换字典,
    //用数组arr保存一条记录转成的字典

    [arr addObject:[rsnull resultDictionary]];
    
    * intForColumn:
    * longForColumn:
    * longLongIntForColumn:
    * boolForColumn:
    * doubleForColumn:
    * stringForColumn:
    * dateForColumn:
    * dataForColumn:
    * dataNoCopyForColumn:
    * UTF8StringForColumnIndex:
    * objectForColumn:
    

    将单一数据取出的其他方式,很多种数据方式
    4.关闭数据库


    最后

    [db close];
    

    这样所有FMDB创建的都会自动消除了。

    相关文章

      网友评论

        本文标题:FMDB使用事项

        本文链接:https://www.haomeiwen.com/subject/emqscftx.html