Database 数据库规范化步骤

Database 数据库规范化步骤,database,database-normalization,Database,Database Normalization,我开始学习数据库和规范化。我目前正在讨论的练习有一个非标准化的表格,我必须概述从非标准化到1FN、2FN、3FN的步骤。 以下是我迄今为止所做的工作: 1FN(根据定义,1FN应该消除重复组——因此我添加了行以消除一个字段中的多个值) StudentAssoc(StudentID(PK)、LastName、FirstName、DOB、Assoc Name(PK)、MaxMem、datejoin) 2FN(根据定义,2FN应该消除部分依赖关系——因此我创建了两个单独的表——一个用于学生实体,一个

我开始学习数据库和规范化。我目前正在讨论的练习有一个非标准化的表格,我必须概述从非标准化到1FN、2FN、3FN的步骤。

以下是我迄今为止所做的工作:

1FN(根据定义,1FN应该消除重复组——因此我添加了行以消除一个字段中的多个值)

StudentAssoc(StudentID(PK)、LastName、FirstName、DOB、Assoc Name(PK)、MaxMem、datejoin)

2FN(根据定义,2FN应该消除部分依赖关系——因此我创建了两个单独的表——一个用于学生实体,一个用于关联实体)

学生(学生ID主键、姓、名、DOB、联名FK)

关联(关联名称PK、MaxMem、DateJoined、StudentID FK)

我的疑问是,如果两个实体中都有FK,我是否消除了部分依赖关系

您可以选择:

1:使用称为功能依赖性分析(FDA)的复杂“方法”

2:使用对象角色建模方法将表转换为一组正式事实类型(+任何约束)。(ORM)

例如:

学生(.id)的姓氏为()

学生(.id)的名字是()

学生(.id)于日期()出生

等等

对象角色模型是一种形式化模型,因此您可以使用数学转换“自动”从模型生成完全规范化的模式

有些人似乎认为FDA是“实现”正常化的唯一途径。 他们错了

参考资料: 信息建模与关系数据库,第二版,Halpin&Morgan 2008。

.

Hi.给出你的教科书名称、版本和算法。1NF没有一个定义,所以请给出你的定义。此外,如果你没有关系,我们如何知道如何解释它?给出你工作的所有步骤,并说明你认为你错了的地方和原因。不要只给出里程碑,我们无法告诉你哪里是对的,哪里是错的到达目的地。请仅将图像用于无法表示为文本或扩充文本的内容。图像无法搜索或剪切粘贴。“重复组”可能有多种含义,无法“消除”它们和“添加行”“不清楚。2NF消除了CKs上非素数属性的部分FD。你认为FDs是什么&为什么?FK是不相关的。(你是说FD?)表的规范化独立于其他表。除非作为练习我们被告知,否则我们不会规范化到较低的NFs以获得较高的NFs。我们不想重做你的家庭作业和重写你的课本,因为我们可以检查你的作业。请按照我最后的评论行事。当你向我们解释如何解释这份数据表时,你可以考虑给你分配任务的人是否和给你分配任务的人一样困惑/草率。ORM2仍然使用FD&JD的概念,但它并没有这样称呼他们。此外,与ER方法一样,它限制了设计选择,因此最佳设计不可能总是出现。但它仍然是最好的信息建模方法。但是它不太理解关系模型。@philipxy告诉我更多,ORM以什么方式“限制设计选择”?它以什么方式“不理解关系模型?”ORM不是“像ER方法”,因为ORM是形式化的,大多数(如果不是所有的话)ER方法都是非正式的。也许你可以证明你的观点和/或告诉我你的观点基于哪本教科书或科学论文?