在我们开发当中,难免有得时候会持久化数据,缓存一些数据!我写了一个面向模型存储的框架!下面是工程地址!和使用代码。
工程
https://github.com/DemoDu/SQLite
喜欢的朋友可以点个星星哦,希望能保住到大家,谢谢
初始化一个模型
Persion *per = [[Persion alloc] init];
per.age = 10;
per.name = @"DumengDemo";
per.girlfriend = @"范冰冰";
per.price = 100000;
//存入数据库 通过一个key
[per dd_insertDataWithId:@"per1"];
这样就是保存一个数据 保存的时候要使用对应key
Persion *per = [[Persion alloc] init];
//获取对应的数据
Persion *per1 = [per dd_getDataFromId:@"per1"];
NSLog(@"age = %d name = %@ girlfriend = %@ price=%f",per1.age,per1.name,per1.girlfriend,per1.price);
获取保存的数据利用对应key获取数据
NSArray *objects = [Persion dd_getAllData];
NSLog(@"%@",objects);
获取全部的数据 Person 是获取Person表的数据,每一个类对应一个表格
//删除对应key
BOOL isyes = [Persion dd_deleteFromId:@"per1"];
if (isyes) {
NSLog(@"删除成功");
}else{
NSLog(@"删除失败");
}
删除对应key的数据
BOOL isyes = [Persion dd_deleteAll];
if (isyes) {
NSLog(@"删除成功");
}else{
NSLog(@"删除失败");
}
删除Person 全部的数据 就是把Persion的表删除
SQLiteTool 建议用这类自己在封装一个
下面的使用和上面的几乎是相同的,上面的使用时我写的一个类扩展,就是用下面的类封装的
喜欢的朋友可以用一下类再次封装
NSString* path(){
NSString *dbPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *tableName = [@"persondb" stringByAppendingPathExtension:@"sqlite"];
dbPath = [dbPath stringByAppendingPathComponent:tableName];
return dbPath;
}
//插入数据