coredata (转)

Posted conanwin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了coredata (转)相关的知识,希望对你有一定的参考价值。

Core Data涉及到的几个主要的概念可以对应数据库来理解:
 
NSManagedObjectContext(托管对象上下文):数据库
NSEntityDescription(实体描述):表
NSFetchRequest(请求):命令集
NSPredicate(谓词):查询语句

 

 

 
 
在书中给出的例子中的一些语句可以用数据库的常用操作来理解
 
NSManagedObjectContext *context = [appDelegate managedObjectContext];     //指定一个“数据库”
 
NSEntityDescription *entityDescription = [[NSEntityDescription alloc] entityForName:@"Line" inManagedObjectContext:context];     //指定一个“表”,Line即是“表名”,context即这个“表”所在的“数据库”
 
NSFetchRequest *request = [[NSFetchRequest alloc] init];     //创建一个空“命令”
 
[request setEntity:entityDescription];     //给这个“命令”指定一个目标“表”
 
NSPredicate *pred = [NSPredicate predicateWithFormat:@"(linenum = %d)",i];     //创建一个“查询”,寻找linenum=i的行
 
[request setPredicate:pred];     //赋予“命令”具体的内容,即实现一个“查询”
 
NSArray *objects = [context executeFetchRequest:request error:&error];     //执行“命令”,获得“结果”objects

以上是关于coredata (转)的主要内容,如果未能解决你的问题,请参考以下文章

CoreData 本地数据存储

CoreData与CloudKit同步时将图像保存到CoreData?

RestKit + CoreData:从CoreData缓存中排除某些对象

Coredata — 入门使用

认识CoreData—初识CoreData

Coredata 单表简单使用