我需要为医院创建ER图和关系模型。我对3个实体保持简单。请有人看看并告诉我,我是否正确规范了这个?
我不确定信任与患者之间应该存在:关系吗?是否有人认为第一个实体是一个单位,在这种情况下 a 医院与x有关系....
答案 0 :(得分:1)
您的规范化不正确。首先,您没有列出功能依赖项。没有它,任何规范化的尝试都只是猜测。
现在,我可以做出合理的猜测,但即便如此,你也会遇到一些问题。 {1}}和Hires
关系未反映在您的1NF / 2NF / 3NF表格中。在您的2NF中,您引入的Cares for
关系大概来自1NF中的Shift
,但Doctor
并未出现在后者中,除非它实际上是什么Shift列适用于,但重命名字段不是规范化的一部分。另外,2NF中Patient_ID
发生了什么?它重新出现在3NF中,但是Hospital
属性来自哪里?此外,您没有指明Location
的主键,假设所有4个字段的组合构成候选键是否正确?明确你的钥匙是一种很好的做法。
实体可以没有属性吗?
您的Shift
关系确实有一个属性 - Hospital
,表示身份关系。请记住,属性是二元关系,Hospital_ID
符合条件。
我不确定是否应该存在:信任与患者之间的关系?
什么是Hospital_ID -> Hospital_ID
?它根本没有在图表中显示。
一个人是否认为第一个实体是一个单位,在这种情况下,医院与x有关系....
多对多关系被分解为两个或多个一对多关系,在阅读基数指标时,我们倾向于将单数实体放在首位,但这不是一个规则或安全假设。明确基数。