fmdb 数据库升级1-----增加表字段

//判断字段是否存在
        if ([self.db columnExists:kScanCardPath inTableWithName:TABLE_CARD]) {
            NSString *update = [NSString stringWithFormat:@"UPDATE %@ SET %@=? WHERE %@ = '%@'",TABLE_CARD,kScanCardPath,kLiuDuID,liuduid];
            [self.db executeUpdate:update,path];
        }else{
            NSString *sql = [NSString stringWithFormat:@"ALTER TABLE %@ ADD %@ text",TABLE_CARD,kScanCardPath];
            [self.db executeUpdate:sql];
            NSString *update = [NSString stringWithFormat:@"UPDATE %@ SET %@=? WHERE %@ = '%@'",TABLE_CARD,kScanCardPath,kLiuDuID,liuduid];
            [self.db executeUpdate:update,path];
        }

kScanCardPath,kLiuDuID<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">是字段的宏定义</span>
 
TABLE_CARD<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">是表名的宏定义</span>
 
注意:需包含头文件#import"FMDatabaseAdditions.h"


FMDB的封装,使你的实体类具备数据库操作的功能,极大简化你的数据库操作,对于自己的扩展也非常简单。 该框架是本人在项目中用到的对FMDB的封装,它的特点如下: 1.自动创建数据库、自动创建数据库。 2.自动检测字段添加新字段。 3.一行代码实现数据库的CURD操作。 4.源码及其简单,易于理解和掌握。 5.扩展自己的功能也非常得简单,容易。 6,只关心字段和字段值,完全不用关心数据库操作逻辑. 特别提示:字段值全部以字符串的形式统一处理 常用的api如下: /** 获取数据库单例函数 */ (instancetype)intance; /** 数据库中是否存在 */ - (BOOL)isExistWithTableName:(NSString*)name; /** 默认建立主键id 创建(如果存在则不创建) , keys 数据存放要求@[字段名称1,字段名称2] */ -(BOOL)createTableWithTableName:(NSString*)name keys:(NSArray*)keys; /** 插入 只关心key和value @{key:value,key:value} */ -(BOOL)insertIntoTableName:(NSString*)name Dict:(NSDictionary*)dict; /** 根据条件查询字段 返回的数组是字典( @[@{key:value},@{key:value}] ) ,where形式 @[@"key",@"=",@"value",@"key",@">=",@"value"] */ -(NSArray*)queryWithTableName:(NSString*)name keys:(NSArray*)keys where:(NSArray*)where; /** 全部查询 返回的数组是字典( @[@{key:value},@{key:value}] ) */ -(NSArray*)queryWithTableName:(NSString*)name; /** 根据key更新value 形式 @[@"key",@"=",@"value",@"key",@">=",@"value"] */ -(BOOL)updateWithTableName:(NSString*)name valueDict:(NSDictionary*)valueDict where:(NSArray*)where; /** 根据名和表字段删除内容 where形式 @[@"key",@"=",@"value",@"key",@">=",@"value"] */ -(BOOL)deleteWithTableName:(NSString*)name where:(NSArray*)where; /** 根据名删除格全部内容 */ -(BOOL)clearTable:(NSString*)name; /** 删除 */ -(BOOL)dropTable:(NSString*)name;
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值