假设某医院诊疗科、医生和患者各实体对应的关系模式如下:
诊疗科(科室代码,科室名称,电话)
医生(医生代码,姓名,科室代码)
患者(病历号,姓名,年龄,性别,病情,就诊日期,医生代码)
其中诊疗科允许有多部电话,则电话属性为(33)。若医生只属于一个诊疗科,并且同一天可为多位患者看病,而患者也可在不同的科室治疗,则医生和患者之间是(34)联系。患者关系模式的主键是(35),该关系属于(36)的问题。
(36)处填()。
A.3NF,无冗余、无插入异常和删除异常
B.2NF,无冗余,但存在插入异常和删除异常
C.2NF,存在冗余,但不存在修改操作的不一致
D.2NF,存在冗余和修改操作的不一致,以及插入异常和删除异常
参考答案:D
解析:
本题考查关系模式和关系规范化方面的基础知识。 试题(33)的正确选项为C。本题诊疗科允许有多部电话,即一个属性可能对应一组值,这样的属性称为多值属性。 试题(34)的正确选项为D。根据题意,一个医生同一天可为多位患者看病,而患者也可在不同的科室治疗,故医生和患者之间是n:m。 试题(35)的正确选项为C。根据题意,患者同一天可在不同的科室有不同的医生为其治疗,因此患者关系模式的主键是病历号、就诊日期和医生代码。 试题(36)的正确选项为D。因为原患者关系存在传递函数依赖,例如:病历号→姓名,姓名→性别,故原关系模式不是3NF的,并存在冗余和修改操作的不一致,以及插入异常和删除异常。