MagicalRecord 多表关联数据操作
最近在使用MagicalRecord做数据持久层CoreData的操作库,今天做了一个多表关联数据的操作,整理了一个demo,特此记录一下。
关于如何使用Cocopads 和 MagicalRecord 库的引入就不做说明了。
1、首先创建一个数据Model,-file->new->CoreData ->选择data model,取名DemolModel
2、分别创建两个实体,UserEntity和MessageEntity
这里的两个表分别代表用户表和用户接受的消息列表,它们是一对多的关系,意思是一个用户会拥有很多条消息。下面设置他它们关系。
3、设置RelationHips
设置UserEntity对MessageEntity的关系是一对多,to many,如下图。新建时候,relationship可以随意取名,一般会取它要关联那个实体的名字(即Message),Destination:是选择需要关联的实体,Inverse:是选择在关联表里面建好的relationship。这是UserEntity的设置。
下面设置MessageEntity,它对于UserEntity是多对一的关系,设置如下
设置完实体之间的关系后,就可以生成它们对应的Model文件了。选择:Editor->Create NSManagedObject Subclass..,然后全选,下一步到完成即可。
自动生成的Model文件:
4、上面工作完成后,可以开始写程序了,
a、引入MagicalRecord库,配置基本设置
#import <MagicalRecord/MagicalRecord.h>
在AppDelegate的application didFinishLaunchingWithOptions设置CoreData本地数据库
[MagicalRecord setupCoreDataStackWithStoreNamed:@"MyDatabase.sqlite"];
在程序退出的时候设置:
- (void)applicationWillTerminate:(UIApplication *)application {
[MagicalRecord cleanUp];
}
b、添加数据到数据库
c、查询数据
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
原文链接:http://www.jianshu.com/p/32cf4bf84b12
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
MagicalRecord 多表关联数据操作的更多相关文章
- Django 08 Django模型基础3(关系表的数据操作、表关联对象的访问、多表查询、聚合、分组、F、Q查询)
Django 08 Django模型基础3(关系表的数据操作.表关联对象的访问.多表查询.聚合.分组.F.Q查询) 一.关系表的数据操作 #为了能方便学习,我们进入项目的idle中去执行我们的操作,通 ...
- Django——8 关系表的数据操作 表关联对象的访问 多表查询
Django 关系表中的数据操作 表关联对象的访问 关联对象的add方法 create方法 remove方法 clear方法 多表查询 查询补充 聚合查询 分组查询 F查询 Q查询 关系表的数据操作 ...
- EF里单个实体的增查改删以及主从表关联数据的各种增删 改查
本文目录 EF对单个实体的增查改删 增加单个实体 查询单个实体 修改单个实体 删除单个实体 EF里主从表关联数据的各种增删改查 增加(增加从表数据.增加主从表数据) 查询(根据主表找从表数据.根据从表 ...
- Oracle中如何实现Mysql的两表关联update操作
在看<MySQL 5.1参考手册>的时候,发现MySQL提供了一种两表关联update操作.原文如下: UPDATE items,month SET items.price=month.p ...
- MySQL表的创建和表中数据操作
这篇文章主要介绍在navicat的命令界面操作mysql.主要涉及建立表结构,和对表中数据的增加删除修改查询等动作.站在一个新手角度的简单mysql表结构和数据操作. ☆ 准备工作 1,保证自己的电脑 ...
- hibernate的基础学习--多表关联数据查询
Hibernate共提供4种多表关联数据查询方式 OID数据查询+OGN数据查询方式 HQL数据查询方式 QBC数据查询方式 本地SQL查询方式(hibernate很少用) 1.OID数据查询+OGN ...
- Django模型基础(三)——关系表的数据操作
模型之间可以有三种表关系,即一对一,一对多和多对多.表关联之间的数据操作在Django中可以很方便的操作到.在模型中,表关联的字段类型是关联表的实例,而不是字段本身类型.关联字段在数据库中会在其后补上 ...
- mysql 库,表,数据操作
一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等performance_schema: MyS ...
- Farseer.net轻量级ORM开源框架 V1.x 入门篇:表的数据操作
导航 目 录:Farseer.net轻量级ORM开源框架 目录 上一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:表实体类映射 下一篇:Farseer.net轻量级ORM开源框 ...
随机推荐
- Android ListView实现不同item的方法和原理分析
ListView实现不同item的方法和原理分析 一问题抛出Listview是android里面的重要组件,用来显示一个竖向列表,这个没有什么问题:但是有个时候列表里面的item不是一样的,如下图,列 ...
- 2D空间中求一点是否在多边形内
参考自这篇博文:http://www.cnblogs.com/dabiaoge/p/4491540.html 一开始没仔细看做法,浪费了不少时间.下面是最终实现的效果: 大致流程: 1.随便选取多边形 ...
- Entity Framework 第十篇 条件查询
业务类中 我们根据条件来动态的查询 创建IQueryable接口 public IQueryable<TEntity> GetQueryable() { IQueryable<TEn ...
- Flowplayer-Setup
SOURCE URL: https://flowplayer.org/docs/setup.html 1. DOCTYPE At the top of your page declare the HT ...
- 嵌入资源的方式让Winform使用系统没有的字体,无需安装字体
原文: How to embed a True Type font http://bobpowell.net/embedfonts.aspx 测试项目下载: http://files.cnblogs. ...
- 【Spring】初始化Spring IoC容器(非Web应用),并获取Bean
参考文章 Introduction to the Spring IoC container and beans BeanFactory 和ApplicationContext(Bean工厂和应用上下文 ...
- Balsamiq Mockups 注册码
Blacklist: Organization name: Rick DongSerial Key: eNrzzU/OLi0odswsqgnKTM5WcMnPS1eoMTQyMjexMDQyAIEa5 ...
- 【leetcode❤python】 1. Two Sum
#-*- coding: UTF-8 -*- #AC源码[意外惊喜,还以为会超时]class Solution(object): def twoSum(self, nums, target): ...
- java内部类以及匿名类
内部类 一个类内部定义的类称为内部类. 内部类允许把逻辑相关的类组织在一起,并控制内部代码的可视性. 内部类与外部类的结构层次如下. 顶层类:最外层的类 外部类:内部类所在的类 内部类:类内部定义的类 ...
- 9----Lua中的面向对象
什么是面向对象? 使用对象.类.继承.封装.消息等基本概念来进行程序设计 面向对象最重要的两个概念就是:对象和类 对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位 一个对象由一组属性 ...