5.错误信息类可以将数据库操作中的异常抛出提示开发者
YHBaseSQLError.h
/**
*异常的提示信息
*/
__PROPERTY_NO_STRONG__(NSString *, errorInfo);
/**
*异常的对应code码
*/
__PROPERTY_NO_ASSIGN__(NSInteger, errorCode);
还有一个头文件中定义了sqlite数据库支持的数据类型和排序宏定义:
YHBaseSQLTypeHeader.h
#define YHBASE_SQL_DATATYPE_SMALLINT @"smallint" //short
#define YHBASE_SQL_DATATYPE_INTRGER @"integer" //int
#define YHBASE_SQL_DATATYPE_REAL @"real" //实数
#define YHBASE_SQL_DATATYPE_FLOAT @"float" //float
#define YHBASE_SQL_DATATYPE_DOUBLE @"double" //double
#define YHBASE_SQL_DATATYPE_CURRENCY @"currency" //long
#define YHBASE_SQL_DATATYPE_VARCHAR @"varchar" //char
#define YHBASE_SQL_DATATYPE_TEXT @"text" //string
#define YHBASE_SQL_DATATYPE_BINARY @"binary" //二进制
#define YHBASE_SQL_DATATYPE_BLOB @"blob" //长二进制
#define YHBASE_SQL_DATATYPE_BOOLEAN @"boolean" //bool
#define YHBASE_SQL_DATATYPE_DATE @"date" //日期
#define YHBASE_SQL_DATATYPE_TIME @"time" //时间
#define YHBASE_SQL_DATATYPE_TIMESTAMP @"timestamp"//时间戳
#define YHBASE_SQL_ORDERTYPE_ASC @"asc" //升序
#define YHBASE_SQL_ORDERTYPE_DESC @"desc" //降序
四、使用
在使用时,直接调用context的相应方法操作数据库即可,例如:
YHBaseSQLiteContext * context = [YHBaseSQLiteManager openSQLiteWithName:@"testDataBase"];
if (context) {
[context selectKeys:nil fromTable:@"MySQL" orderBy:@"age" orderType:YHBASE_SQL_ORDERTYPE_DESC whileStr:@"age>18" callBack:^(NSArray<NSDictionary *> *dataArray, YHBaseSQLError *error) {
NSLog(@"%@",dataArray);
NSLog(@"%@",error.errorInfo);
[context closeContext];
}];
}
上面的代码将查询textDataBase数据库中MySQL表里所有age列大于18的数据,并按照age从小到大进行排序,数据结果在回调的dataArray中。
外:完整的代码在下面的git地址中,这个git项目是一个基础的开发框架,里面封装了许多开发和调试常用功能,代码不完善之处,希望多多交流,QQ316045346.