使用 Core Data 实现第一范式 (1NF)

Posted

技术标签:

【中文标题】使用 Core Data 实现第一范式 (1NF)【英文标题】:Implementing 1st Normal Form (1NF) using Core Data 【发布时间】:2011-10-05 13:22:41 【问题描述】:

我的核心数据数据库中有三个主表。他们三个都有一些共同的属性,例如名字。

我应该创建一个包含这些属性的第 4 个表,然后在这个“基本”表和其他 3 个表之间创建单独的 1 对 1 关系,还是应该在所有 3 个表中创建重复的属性?

【问题讨论】:

【参考方案1】:

如果名称完全不相关(例如“出版商名称”、“作者名称”和“书名”),则不,将它们作为每个实体的属性。如果您将它们移到没有明显好处的“名称”实体,您将支付性能损失。

如果它们是相关的(例如,“经理”实体具有“姓名”,“员工”实体具有“姓名”,并且经理可以是员工),那么您可能需要创建一个新实体(例如人员)。

始终牢记性能:可以使用不完全标准化的模型。不要让理论完美扼杀你的表现。请记住,这是一个 iPhone 应用程序而不是数据中心。

【讨论】:

以上是关于使用 Core Data 实现第一范式 (1NF)的主要内容,如果未能解决你的问题,请参考以下文章

解析范式(1NF-4NF)

数据库设计三大范式

SQL 第一范式 (1NF) 与序列化

三范式

三范式

javaoo.day15