码迷,mamicode.com
首页 > 其他好文 > 详细

初识CoreData与详解

时间:2016-04-20 11:27:29      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:

Core Data数据持久化是对SQLite的一个升级,它是iOS集成的,在说Core Data之前,我们先说说在CoreData中使用的几个类。

   (1)NSManagedObjectModel(被管理的对象模型)

           相当于实体,不过它包含 了实体间的关系

    (2)NSManagedObjectContext(被管理的对象上下文)

         操作实际内容

        作用:插入数据  查询  更新  删除

  (3)NSPersistentStoreCoordinator(持久化存储助理)

          相当于数据库的连接器

    (4)NSFetchRequest(获取数据的请求)    

        相当于查询语句

     (5)NSPredicate(相当于查询条件)

    (6)NSEntityDescription(实体结构)

    (7)后缀名为.xcdatamodel的包

        里面的.xcdatamodel文件,用数据模型编辑器编辑

       编译后为.momd或.mom文件,这就是为什么文件中没有这个东西,而我们的程序中用到这个东西而不会报错的原因

   首先我们要建立模型对象

 

 

技术分享

 

 

Core Data是iOS编程,乃至Mac编程中使用持久性数据存储的最佳方式,本质上来说,Core Data使用的就是SQLite,但是通过一系列特性避免了使用SQL的一些列的麻烦,不仅如此,他还能够合理管理内存,反正好处很多。

接下来就说说我自己的理解:

   在创建项目的时候可以选择使用Core Data,项目创建成功后,会在AppDelegate类中自动添加相关代码,此外,还会自动生成一个数据模型文件JRCoreData.xcdatamodeld

技术分享

如下代码

技术分享

 

 技术分享

 

 

如果项目在创建的时候没有选择使用Core Data,但是在后面需要使用,那么需要手动的添加AppDelegate中的相关代码。此外,还需要手动添加一个Data Model文件

技术分享

创建Data Model文件时需要注意,文件名称要与AppDelegate.m中managedObjectModel方法中提到的文件名称相匹配。如是Person类Data Model文件名就是Person。

有了Data Model文件后,就可以在里面添加实体和关系,实际上就是向数据库中添加表格和建立表格之间的关联

技术分享

 

 创建好实体后,可以通过添加NSManagedObject subclass文件,系统可以自动添加实体对应的数据模型类,如图所示:

技术分享

 

 

通过代码实现数据库的操作:

导入CoreData库

创建全局的NSManagedObjiectContet上下文

技术分享

操作CoreData中的数据 ,获取数据

技术分享

向CoreData中存储数据

技术分享

 

查询

技术分享

删除

技术分享

 

将数据存到数组中

技术分享

 

模糊查询

 

技术分享 

 

 

 

 

最后在看看下面图解

 

技术分享技术分享

 

 

技术分享

初识CoreData与详解

标签:

原文地址:http://www.cnblogs.com/YRFios/p/5411524.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!