问题
问答题
[问题2]对于表2-2、表2-3所示的“职工”和“部门”关系,请指出下列各行是否可以插入,为什么
答案
参考答案:
解析:[问题2]解答 (1)该行不能插入“职工”关系,它违反了实体完整性中主码必须惟一区分关系中的每一个属性。 (2)该行可以插入“职工”关系,尽管部门号、电话和办公室为空,但是它表示该雇员没有分配到某个部门。 (3)该行不能插入“职32’’关系,它违反了参照完整性。因为6在关系“部门”中不存在。[问题2]
[分析]: 本题主要考查完整性定义的约束性。以下表是待插入的记录组。
(1)由于在职工表的定义中职工号主码是惟一标识每个元组(记录)的,而(1)中的职工号是“1001”,在试题的职工关系中已经存在该职工号的记录,为了保证实体的完整性,该条记录不能插入。 (2)该元组可以插入“职工”关系,尽管部门号、电话和办公室为空,但是它表示该职工暂时没有分配到某个部门。虽然职工表中部门号是外键,但在定义中也没有约束它不能为空。 (3)该元组不能插入“职工’’关系,部门号是外键,而在部门关系中找不到部门号是6的元组,违反了参照完整性,所以不能做插入操作。