您的位置:首页 > 移动开发 > Objective-C

FMDB使用

2015-11-02 15:33 447 查看
创建工程文件FMDBTry

本次采用CocoaPods添加FMDB第三方库

打开Terminal

Terminal:cd 至FMDBTry文件夹内

Terminal:pod search 'FMDB'

选择合适的第三方库,例如:pod 'FMDB', '~> 2.5'

Terminal:touch Podfile

打开Podfile 将pod 'FMDB', '~> 2.5'写入

Terminal:pod install

打开FMDBTry.xcworkspace

ViewController.m

拿到沙盒路径NSString * docsdir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject];

拼接路径
NSString * dbpath = [docsdir stringByAppendingPathComponent:@"student.sqlite"];
创建表文件

FMDatabase * db = [FMDatabase databaseWithPath:dbpath];

打开表文件并创建一个模型类(类名:t_student,属性包括:id,name,age,其中id会逐渐自动加1
[db open]
[db executeUpdate:@"CREATE TABLE IF NOT EXISTS t_student (id integer PRIMARY KEY AUTOINCREMENT, name text NOT NULL, age integer NOT NULL);"];

增加一个t_student的对象并赋值(名字:me,年龄:随机数)
// executeUpdate : 不确定的参数用?来占位
[self.db executeUpdate:@"INSERT INTO t_student (name, age) VALUES (?, ?);", @"me", @(arc4random_uniform(40))];删除t_student这个模型类
[self.db executeUpdate:@"DROP TABLE IF EXISTS t_student;"];
//删除t_student模型类中id = 1的对象
[self.db executeUpdate:@"delete from t_student where id = ?", [NSString stringWithFormat:@"%d",1]];


修改数据 将t_student内的id = 1的数据的name属性修改为 me
//FMResultSet * resultSet = [self.db executeQuery:@"select * from t_student"];
// while ([resultSet next]) {
// int ID = [resultSet intForColumn:@"id"];
[self.db executeUpdate:@"update t_student set name = ? where id = ?",@"me",@"1"];

// }

查询t_student的全部数据

FMResultSet * resultSet = [self.db executeQuery:@"select * from t_student"];
while ([resultSet next]) {
int ID = [resultSet intForColumn:@"id"];
NSString * name = [resultSet stringForColumn:@"name"];
int age = [resultSet intForColumn:@"age"];
NSLog(@"1. %d 2.%@ 3.%d",ID,name,age);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  objective-c 数据库 FMDB