SwiftUI之CoreData关键技术大全

参考代码

实体、属性、关系

  • Entity(实体)是CoreData中的类定义。典型的例子是雇员或公司。在关系数据库中,实体对应于一个表。
  • Attribute(属性)是附加到特定实体的一条信息。例如,一个Employee实体可以具有该雇员的姓名,职位和薪水的属性。在数据库中,属性对应于表中的特定字段。
  • Relationship(关系)是多个实体之间的链接。在CoreData中,两个实体之间的关系称为一对一关系,而一个和许多实体之间的关系称为一对多关系。例如,经理可以与一组雇员建立一对多关系,而单个雇员通常与他的经理具有一对一关系。

存储、读取、更新、删除

NSManagedObject

表示存储在CoereData中的单个对象;您必须使用它来创建,编辑,保存和从Core Data持久性存储中删除。稍后您将看到,NSManagedObject是一种变形器。它可以采用数据模型中任何实体的形式。

1、 存储NSManagedObject

   var items: [NSManagedObject] = []

2、读取NSmanagedObject数据

note.value(forKeyPath: "name") as? String

NSManagedObjectContext

在从CoreData存储中保存或检索任何内容之前,首先需要使用NSManagedObjectContext。您可以将托管对象上下文视为用于处理托管对象的内存“便签本”。

考虑将新的managed object保存到Core Data的过程分为两个步骤:首先,将新的managed object插入managed object context;一旦感到满意,就可以“提交”managed object contenxt中的更改以将其保存到磁盘.

Xcode已经生成了一个managed object context,作为新项目模板的一部分。请记住,只有在开始时选中“Use Core Data”复选框,才会发生这种情况。此默认managed object context作为应用程序委托中NSPersistentContainer的属性存在。要访问它,您首先需要获得对应用程序委托的引用。

41085-372c54e2016efbf5.jpg
选中“Use Core Data”复选框
41085-cd79eb572969c978.png
AppDelegate.swift 文件,自动生成的代码

技术交流

QQ:3365059189
SwiftUI技术交流QQ群:518696470

https://www.jianshu.com/c/7b3e3b671970

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知识大胖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值