FMDB的使用

//

//  FMDBmanager.h

//  database

//

//  Created by PRL on 16/10/13.

//  Copyright © 2016PRL. All rights reserved.

//


#import <Foundation/Foundation.h>



@interface FMDBmanager : NSObject{

    FMDatabase * _db;

}


+(FMDBmanager *)sharedManager;


//获取用户信息

-(MyInfoModel *)getMyInfo:(NSString *)Uid;


//删除用户表信息

-(void)deleteInfoMessage:(NSString *)userid;


//更新用户信息

-(void)updateInfoMessage:(NSString *)userid andNewString:(NSString *)newString andLabelString:(NSString *)labelString;


//更新model信息

-(void)EditInfoRequest:(MyInfoModel *)model;

@end



//

//  FMDBmanager.m

//  database

//

//  Created by PRL on 16/10/13.

//  Copyright © 2016PRL. All rights reserved.

//


#import "FMDBmanager.h"


static FMDBmanager * manager =nil;


@implementation FMDBmanager


//获取用户详细信息

-(MyInfoModel *)getMyInfo:(NSString *)Uid

{

    FMResultSet * set = [_dbexecuteQuery:@"select * from USERMESSAGE where userid = ?",Uid];

    MyInfoModel * InfoModel= [[MyInfoModelalloc]init];

    while ([setnext]) {

        InfoModel.userId = [setstringForColumn:@"userid"];

        InfoModel.myHeadImage = [setstringForColumn:@"myHeadImage"];

        InfoModel.nickName = [setstringForColumn:@"nickName"];

        InfoModel.realName = [setstringForColumn:@"realName"];

        InfoModel.height = [setstringForColumn:@"height"];

        InfoModel.weight = [setstringForColumn:@"weight"];

        InfoModel.phoneNo = [setstringForColumn:@"phoneNo"];

        InfoModel.mySex = [setstringForColumn:@"mySex"];

        InfoModel.idCard = [setstringForColumn:@"idCard"];

        InfoModel.myAddress = [setstringForColumn:@"address"];

        InfoModel.weixin = [setstringForColumn:@"weixin"];

        InfoModel.qq = [setstringForColumn:@"qq"];

        InfoModel.treatmentNo = [setstringForColumn:@"treatmentNo"];

    }

    return InfoModel;

}

//删除用户详细信息

-(void)deleteInfoMessage:(NSString *)userid

{

    BOOL res = [_dbexecuteUpdate:@"delete from USERMESSAGE where userid=?",userid];

    if (res ==NO) {

        NSLog(@"删除失败");

    }


}

//更新用户信息

-(void)updateInfoMessage:(NSString *)userid andNewString:(NSString *)newString andLabelString:(NSString *)labelString

{


    BOOL res =NO;

    if ([selfExitUserid:userid]) {

        

    }else{

        res = [_dbexecuteUpdate:@"insert into USERMESSAGE(userid) values(?)",userid];

        if (res ==NO) {

            NSLog(@"主键插入失败");

        }else{

            NSLog(@"主键插入成功");

        }  

    }

    if ([labelStringisEqualToString:@"头像"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set myHeadImage=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"昵称"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set nickName=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"真实姓名"]) {

      res = [_dbexecuteUpdate:@"update USERMESSAGE set realName=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"身高"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set height=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"体重"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set weight=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"手机号"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set phoneNo=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"性别"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set mySex=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"身份证号"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set idCard=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"地址"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set address=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"微信"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set weixin=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"QQ"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set qq=? where userid=?",newString,userid];

    }

    if ([labelStringisEqualToString:@"就诊号"]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set treatmentNo=? where userid=?",newString,userid];

    }

    if (res ==NO) {

        DLog(@"属性修改失败");

        return;

    }

    DLog(@"属性修改成功");

}

//更新model信息

-(void)EditInfoRequest:(MyInfoModel *)model

{

    BOOL res =NO;

    if ([selfExitUserid:model.userId]) {

        res = [_dbexecuteUpdate:@"update USERMESSAGE set treatmentNo=?,nickName=?,realName=?,height=?,weight=?,phoneNo=?,mySex=?,idCard=?,address=?,weixin=?,qq=? where userid=?",model.treatmentNo,model.nickName,model.realName,model.height,model.weight,model.phoneNo,model.mySex,model.idCard,model.myAddress,model.weixin,model.qq,model.userId];

        if (res) {

            NSLog(@"用户资料修改成功");

        }else{

            NSLog(@"用户资料修改失败");

        }

    }else{

        //myHeadImage,nickName,realName,height,weight,phoneNo,mySex,idCard,address,weixin,qq,treatmentNo

        res = [_dbexecuteUpdate:@"insert into USERMESSAGE(userid,myHeadImage,nickName,realName,height,weight,phoneNo,mySex,idCard,address,weixin,qq,treatmentNo) values(?,?,?,?,?,?,?,?,?,?,?,?,?)",model.userId,@"",model.nickName,model.realName,model.height,model.weight,model.phoneNo,model.mySex,model.idCard,model.myAddress,model.weixin,model.qq,model.treatmentNo];

        if (res) {

            NSLog(@"用户资料插入成功");

        }else{

            NSLog(@"用户资料插入失败");

        }

    }

}

-(id)init{

    if (self = [superinit]) {

        NSString * path = [NSHomeDirectory()stringByAppendingPathComponent:@"Documents/userMessage.db"];

        DLog(@"数据库地址 %@",path);

        

        _db = [[FMDatabasealloc]initWithPath:path];

        BOOL res = [_dbopen];

        

        if (res ==NO) {

            DLog(@"数据库创建失败");

            returnself;

        }

        DLog(@"数据库创建成功");

        res = [_dbexecuteUpdate:@"create table if not exists USERMESSAGE(userid varchar(2048),myHeadImage,nickName,realName,height,weight,phoneNo,mySex,idCard,address,weixin,qq,treatmentNo)"];

        if (res ==NO) {

            DLog(@"用户表创建失败");

            returnself;

        }

        DLog(@"用户表创建成功");

    }

    returnself;

}


+(FMDBmanager *)sharedManager

{

    if (manager ==nil) {

        manager = [[FMDBmanageralloc]init];

    }

    returnmanager;

}

-(BOOL)ExitUserid:(NSString *)userid

{

    FMResultSet * set = [_dbexecuteQuery:@"select * from USERMESSAGE;"];

    NSMutableArray * arr = [[NSMutableArrayalloc]init];

    if (!set) {

        returnNO;

    }else{

        while ([setnext]) {

            NSString * string = [setstringForColumn:@"userid"];

            [arr addObject:string];

        }

        if ([arrcontainsObject:userid]) {

            //有相应的userid

            returnYES;

        }else{

            returnNO;

        }

    }

    

}

@end



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值