若是须要保存大量的结构较为复杂的数据的时候,使用数据库,例如交规考试项目sql
数据库(DB)是一种数据模型组织起来并存放存储管理的数据仓库。它是由文件管理发展起来的,现在的数据库基本上都是关系型数据库。数据库
数据库的基本操做是增、删、查、改。多线程
常见的几种数据库,Oracle,Access,SQL Server,DB2,Mysql框架
手机上使用的数据库为SQLite,由于它占用资源很好,易于配置等缘由。spa
实例: 使用数据存储存储一个班上学生的信息线程
学号:sid 用户名:username 密码:password 成绩:score 1501 zhangs 123 100 1502 heihei 321 90code
(1)建立数据库sqlite
能够直接在菜单栏中选中new database 建立出一个新的数据库。blog
(2)建立数据表资源
数据表的建立方式比较多一点,能够在structure中点击+号进行建立。然
在SQL Query中输入建立语句 create table tablename(id 类型,name 类型) (直接在下方的输入框中输入)
(3)SQL结构化查询语句
首先必需要有数据,加入数据的操做为insert into tablename (id,name) values (11,'zhang')
(4)简单的where条件
FMDB 是一个开源的第三方框架。
FMDatabase -表示一个单独的数据库,用来执行SQLite的命令。
FMResultSet -表示FMDatabase执行以后,返回的结果集。
FMDatabaseQuere-是在多线程的时候,使用这个类。
(1)导入FMDB
直接加载到项目中,并加上sqlite3.dylib的二进制库(查找sqlite)。
在须要的文件中,加上头文件 #import "FMDatabase.h"
(2)建立并打开数据库
NSString *path = [[NSBundle mainBundle ] pathForResource:@"data.sqlite" ofType:nil]; _database = [[FMDatabase alloc] initWithPath:path]; if (!_database.open) { NSLog(@"打开失败"); }else{ NSLog(@"成功"); }
(3)查询操做,并获得返回集
NSString *sql = @"select * from firstlevel"; FMResultSet *resultset = [_database executeQuery:sql]; NSMutableArray *mArray = [[NSMutableArray alloc] init]; while ([resultset next]) { Model *model = [[Model alloc] init]; model.id = [resultset stringForColumn:@"id"]; model.name = [resultset stringForColumn:@"name"]; [mArray addObject:model]; }
结语:每天加油。。。。。。