最近在使用MagicalRecord做数据持久层CoreData的操作库,今天做了一个多表关联数据的操作,整理了一个demo,特此记录一下。

关于如何使用Cocopads 和 MagicalRecord 库的引入就不做说明了。

1、首先创建一个数据Model,-file->new->CoreData ->选择data model,取名DemolModel

1

2、分别创建两个实体,UserEntity和MessageEntity

2

这里的两个表分别代表用户表和用户接受的消息列表,它们是一对多的关系,意思是一个用户会拥有很多条消息。下面设置他它们关系。

3、设置RelationHips

设置UserEntity对MessageEntity的关系是一对多,to many,如下图。新建时候,relationship可以随意取名,一般会取它要关联那个实体的名字(即Message),Destination:是选择需要关联的实体,Inverse:是选择在关联表里面建好的relationship。这是UserEntity的设置。

3-1

下面设置MessageEntity,它对于UserEntity是多对一的关系,设置如下

3-2

设置完实体之间的关系后,就可以生成它们对应的Model文件了。选择:Editor->Create NSManagedObject  Subclass..,然后全选,下一步到完成即可。

3-3

自动生成的Model文件:

3-4

4、上面工作完成后,可以开始写程序了,

a、引入MagicalRecord库,配置基本设置

#import <MagicalRecord/MagicalRecord.h>

在AppDelegate的application didFinishLaunchingWithOptions设置CoreData本地数据库

[MagicalRecord setupCoreDataStackWithStoreNamed:@"MyDatabase.sqlite"];

在程序退出的时候设置:

- (void)applicationWillTerminate:(UIApplication *)application {

[MagicalRecord cleanUp];

}

b、添加数据到数据库

b-1

c、查询数据

c-1

d、输出结果

MagicalRecordDemo[1116:31713] 用户数: 1

MagicalRecordDemo[1116:31713] demowork

MagicalRecordDemo[1116:31713] Hello

MagicalRecordDemo[1116:31713] Bye Bye


demo地址:https://github.com/ulongx/MagicalRecordDemo.git

文/ulongx(简书作者)
原文链接:http://www.jianshu.com/p/32cf4bf84b12
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

最新文章

  1. 浩瀚技术助力批发零售商户实现PDA移动POS打印扫描进销存信息化管理
  2. Hadoop编程1:天气数据AWK &amp; MapReduce
  3. WCF Data Service 使用小结(二) —— 使用WCF Data Service 创建OData服务
  4. OOAD与UML笔记
  5. 3大主流NoSQL数据库性能对比测试报告
  6. yuv422/yuv420格式
  7. WebGoat学习——跨站脚本攻击(Cross‐Site Scripting (XSS))
  8. ssh链接云主机的一些笔记
  9. ASP.NET MVC3中的路由系统 Routes
  10. js document
  11. cgLib生成动态代理
  12. java 网络编程之TCP通信和简单的文件上传功能
  13. TI Davinci DM6446开发攻略——开发环境搭建
  14. 【Solidity】学习(2)
  15. 嵌入式4412开发板学习知识-Linux系统基础知识
  16. ubuntu 窗口操作快捷键
  17. BBS-文章详情页、点赞功能
  18. 【Linux 进程】fork函数详解
  19. 23种设计模式之建造者模式(Builder)
  20. Java 简单TCP文件传输

热门文章

  1. dotfiles管理
  2. log4j日志不输出MyBatis SQL脚本?
  3. noi 2985 数字组合
  4. 使用BigDecimal进行精确计算工具类
  5. Android--菜单详解
  6. javascript 常用实用函数。。。。。。
  7. Log4Net 配置SQL2008数据库 并传入自定义业务对象
  8. js数组的一些操作
  9. Deep Learning Papers Reading Roadmap
  10. 单据状态BE构建