列表

详情


假设员工关系 EMP(员工号,姓名,性别,部门,部门电话,部门负责人,家庭住址,家庭成员,成员关系)如下表所示。如果一个部门只能有一部电话和一位负责人,一个员工可以有多个家庭成员,那么关系EMP属于(),且()问题;为了解决这一问题,应该将员工关系EMP分解为()。


 

第 1 问

A. 1NF

B. 2NF

C. 3NF

D. BCNF

第 2 问

A. 无冗余、无插入异常和删除异常

B. 无冗余,但存在插入异常和删除异常

C. 存在冗余,但不存在修改操作的不一致

D. 存在冗余、修改操作的不一致,以及插入异常和删除异常

第 3 问

A. EMP1(员工号,姓名,性别,家庭住址) EMP2(部门,部门电话,部门负责人) EMP3(员工号,家庭成员,成员关系)

B. EMP1(员工号,姓名,性别,部门,家庭住址) EMP2(部门,部门电话,部门负责人) EMP3(员工号,家庭成员,成员关系)

C. EMP1(员工号,姓名,性别,家庭住址) EMP2(部门,部门电话,部门负责人,家庭成员,成员关系)

D. EMP1(员工号,姓名,性别,部门,部门电话,部门负责人,家庭住址) EMP2(员工号,家庭住址,家庭成员,成员关系)

参考答案: A D B

详细解析:

本题考查对范式、模式分解知识的掌握程度。
试题(1)考查范式的基础知识。员工关系EMP属于第一范式的原因是因为其主键是(员工号,家庭成员),非主属性部门名,负责人,电话存在对主键的部分函数依赖。所以正确的答案是A。
试题(2)正确的答案是D,因为表中存在冗余、修改操作的不一致,以及插入异常和删除异常。
试题(3)正确的答案是B,因为对一个给定的关系模式进行分解,使得分解后的模式是否与原来的模式等价有如下三种情况:
① 分解具有无损连接性;
②分解要保持函数依赖;
③ 分解既要无损连接性,又要保持函数依赖。
选项A是错误的,因为将原关系模式分解成EMP1(员工号,姓名,家庭住址),EMP2〔部门,部门电话,部门负责人)和EMP3(员工号,家庭成员,成员关系)三个关系模式,分解后的关系模式既具有损连接,又不能保持函数依赖。因为此时给定员工号己无法查找所在的部门,如下表所示。

选项B是正确的,因为将原关系模式分解成EMP1(员工号,姓名,部门,家庭住址),EMP2(部门,部门电话,部门负责人)和EMP3(员工号,家庭成员,成员关系)既具有无损连接性,又保持了函数依赖。如下表所示。
选项C是错误的,因为将原关系模式分解成EMP1(员工号,姓名,家庭住址)和EMP2(部门,部门电话,部门负责人,家庭成员,成员关系)两个关系模式,分解后的关系模式既具有损连接,又不能保持函数依赖一例如,给定员工号无法查找所在的部门,无法查找其家庭成员等信息。如下表所示。

选项D是错误的,因为将原关系模式分解成EMP1(员工号,姓名,部门,部门电话,部门负责人,家庭住址)和EMP2(员工号,家庭住址,家庭成员,成员关系)两个关系模式后,所得的关系模式存在冗余和修改操作的不一致性。例如,EMP 1中某员工的家庭住址从“陕西省西安市太白路2号”修改为“陕西省西安市雁塔路18号”,而EMP2中该员工的家庭住址未修改,导致修改操作的不一致性。又如,EMP2中某员工的家庭成员有5个,郑么其家庭住址就要重复出现S次,导致数据的冗余。

上一题