首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

简单易用的iOS数据库操作框架(1)

简单易用的iOS数据库操作框架(1)

近期稍闲,静下心来回顾了这几年的开发工作,发现沉淀到文字里的东西太少,于是封装了几个iOS开发过程中经常要用到的网络请求、文件下载、数据库操作等框架,与大家分享一下。这里简单介绍下基于 FMDB 和 SQLite 的一套轻量级数据库操作框架--JCDB ,它以对象的形式执行数据库表的创建及修改,记录的插入、删除、修改、查询等操作。

sql-stmt.png

这套框架目前支持以下数据库操作:

    数据库表的 CREATE、DROP 和 ALERT。
    数据库记录的相关查询 SELECT。
    数据库记录的 INSERT、REPLACE、UPDATE 和 DELETE。

创建和数据库

[[JCDBManager sharedManager] createWithDBName"testDB.sqlite"];

关闭数据库

[[JCDBManager sharedManager] closeDB];

创建表

[JCTestRecord createTable];

添加表字段

[JCTestRecord alterTableWithColumn"testUnsignedLongLongInt"];

删除表

[JCTestRecord dropTable];

插入或替代当前记录

    JCTestRecord *record = [[JCTestRecord alloc] init];
    record.testPrimaryKey = [NSString stringWithFormat"primaryKeyProperty%@", @(index + 1)];
    record.testIgnore = @"ignoreProperty";
    record.testMutableString = [[NSMutableString alloc] initWithString"mutableStringProperty"];
    record.testNumber = @(6.20);
    record.testDecimalNumber = [[NSDecimalNumber alloc] initWithString"2016"];
    record.testDate = [NSDate date];
    record.testData = [@"dataProperty" dataUsingEncoding:NSUTF8StringEncoding];
    record.testMutableData = [NSMutableData dataWithData:[@"mutableDataProperty" dataUsingEncoding:NSUTF8StringEncoding]];
     
    record.testBOOL = YES;
    record.testShort = 6;
    record.testInt = 20;
    record.testLong = 20160620;
    record.testInteger = index + 1;
    record.testEnumType = (index + 1) % 3;
    record.testInt64 = (index + 1)*24*3600;
    record.testUInteger = 201606;
    record.testFloat = 10.5;
    record.testCGFloat = 1.26;
    record.testDouble = 10.52;
    record.testTimeInterval = 978307200.0;
    record.testLongInt = 10000010;
    record.testLongLongInt = 1000000110;
    record.testUnsignedLongLongInt = 100000000111;
     
    BOOL result = [record updateRecord];
返回列表