数据库(基于C语言)
配置SQL环境:导入<sqlLite3.h>
选择左上角蓝色手机---->build phases----?link binary---->点击+---->搜libSQL
还有一步要在什么地方输入代码我忘记了,有知道的请留言给我,以便我及时更改,不知道的就上网查一下吧
//创建数据库文件
const char *filename = "/Users/Desk/data.db"
sqlite3 *database = nil;
//打开数据库文件
sqlite3_open(filename,&database);
//下面代码中的参数解释
1.数据库操作句柄 database
2.sql语句
3.sql语句执行后的回调函数
4.void *,在C语言中,可以指代任意类型的指针,相当于OC中的id类型
5.错误信息
//创建一个表
const char *sql = "create table if not exists user(id, interger)";
sqlite3_exec(database,sql,NULL,NULL,NULL);
//数据库认C字符串,NSString要转换类型
//添加元素
NSString *string = [NSString stringWithFormate:@"insret into user values ('%d')",10];
const char *sql = string.UTF8String;
sqlite3_close(database);
JSON数据(js字符串<---->js数据<---->js对象)
json数据特点: 1.数据结构简单 2.冗余代码少,数据量轻 3.可读性差 只有数组或者字典是json对象
//字符串满足json数据结构,但不是json对象
NSString *string = @"{\"name\":\"百度\",\"age\":4}";
//字典可以是json对象
NSDictionary *jsonDict = @{@"name": @"小喆",
@"marry": 0,
@"age": @20};
//解析json数据
//判断json对象是否合法
BOOL ret = [NSJSONSerialization isValidJSONObject: jsonDict];
NSError *error = nil;
//字符串不能作为json的顶级类型出现
NSDdata *data1 = [NSJSONSerialization dataWithJSONObject: string options:0 error: &error]; //data1不能读取数据
//把合法的json对象转换成json数据
NSData *data = [NSJSONSerialization dataWithJSONObject:jsonDict options:0 error:&error];
js字符串---->js数据---->js对象
NSString *jsonData = @[{\"name\": \"Tom\", \"age\": 20}, {\"name\":\"Mike\", \"age\":20}];
NSData *jsonData = [jsonArray dataUsingEncoding:NSUTF8StringEncoding];
//返回结果是可变的json对象 //NSJSONReadingMutable返回的是json字符串
NSArray *array = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:nil];