Core Data是iOS5之后才出现的一个框架,本质上是对SQLite的一个封装,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象,通过CoreData管理应用程序的数据模型,可以极大程度减少需要编写的代码数量!
1、首先创建一个coreData 模型文件:系统创建或者自己创建
2、在data Model 中创建项目中需要用到的实体(Entities),例如,创建一个Student 实体(第一字母必须是大写),以及添加一些name、age、sex 等属性,如下图
3、生成对应实体的实体类,在此之前要注意下图两个设置部分,否则会引起崩溃现象
4、生成上下文 关联数据库
- NSManagedObjectContext 管理对象,上下文,持久性存储模型对象,处理数据与应用的交互
- NSManagedObjectModel 被管理的数据模型,数据结构
- NSPersistentStoreCoordinator 添加数据库,设置数据存储的名字,位置,存储方式
- NSManagedObject 被管理的数据记录
- NSFetchRequest 数据请求
- NSEntityDescription 表格实体结构
①、自己创建模型文件时需要以下代码来手动生成上下文,关联数据库
//创建数据库
- (void)createSqlite{
//1、创建模型对象
//获取模型路径
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"Model" withExtension:@"momd"];
//根据模型文件创建模型对象
NSManagedObjectModel *model = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
//2、创建持久化存储助理:数据库
//利用模型对象创建助理对象
NSPersistentStoreCoordinator *store = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:model];
//数据库的名称和路径
NSString *docStr = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSS