数据库操作之FMDB的使用方法

1.在工程中导入libsqlite3.0.dylib框架

2.引入头文件

#import "FMDatabase.h"

#import "FMDatabaseQueue.h"

3.添加成员变量

FMDatabase *db;

NSString *database_path;

#define DBNAME    @"personinfo.sqlite"

#define ID        @"id"

#define NAME      @"name"

#define AGE       @"age"

#define ADDRESS   @"address"

#define TABLENAME @"PERSONINFO"


4.创建表

if([db open]){

NSString *createTable = [NSString stringWithFormat:@"create table if not exists '%@' ('%@',integer primary key auto increment,'%@' text, '%@' integer, '%@', text )",

TABLENAME,ID,NAME,AGE,ADDRESS];

BOOL result = [db executeUpdate:createTable];

if (!result) {

 NSLog("创建表失败");

} else {

 NSLog("创建成功");

}

[db close];

}

5.插入数据

if ([db open]){

 NSString *insert = [NSString stringWithFormat:@"insert into '%@' ('%@','%@','%@') values('%@', '%@', '%@', TABLEMANE, NAME,AGE, ADDRESS, @"老蒋",@"30",@"河南")];

BOOL result = [dbexecuteUpdate:insert];

if (!result) {

            NSLog(@"插入错误");

        }else {

            NSLog(@"插入成功");

        }

        [dbclose];

}

6.修改数据

 if ([dbopen]) {

       NSString *updateSql = [NSStringstringWithFormat:

                               @"UPDATE '%@' SET '%@' = '%@' WHERE '%@' = '%@'",

                              TABLENAME,   AGE, @"15" ,AGE, @"13"];

       BOOL res = [dbexecuteUpdate:updateSql];

       if (!res) {

            NSLog(@"error when update db table");

        }else {

            NSLog(@"success to update db table");

        }

        [dbclose];


    }


7.删除数据

 if ([dbopen]) {

        

       NSString *deleteSql = [NSStringstringWithFormat:

                               @"delete from %@ where %@ = '%@'",

                              TABLENAME, NAME,@"张三"];

       BOOL res = [dbexecuteUpdate:deleteSql];

        

       if (!res) {

            NSLog(@"error when delete db table");

        }else {

            NSLog(@"success to delete db table");

        }

        [dbclose];


    }

8.查询数据

 if ([dbopen]) {

       NSString * sql = [NSStringstringWithFormat:

                         @"SELECT * FROM %@",TABLENAME];

       FMResultSet * rs = [dbexecuteQuery:sql];

       while ([rs next]) {

           int Id = [rs intForColumn:ID];

           NSString * name = [rs stringForColumn:NAME];

           NSString * age = [rs stringForColumn:AGE];

           NSString * address = [rs stringForColumn:ADDRESS];

            NSLog(@"id = %d, name = %@, age = %@  address = %@", Id, name, age, address);

        }

        [dbclose];

    }




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值