问题
单项选择题
(37)~(40)题基于“学生-选课-课程”数据库中的3个关系:
S(S#, SNAME, SEX, AGE),
SC(S#, C#, GRADE),
C(C#, CNAME, TEACHER),
它们的主码分别是S#,(S#,C#),C#
下列关于保持数据完整性的叙述中,不正确的是( )。
A.向关系SC插入元组时,S#和C#都不能是空值(NULL)
B.可以任意删除关系SC中的元组
C.向任何一个关系插入元组时,必须保证关系主码值的唯一性
D.可以任意删除关系C中的元组
答案
参考答案:D
解析: 根据参照完整性规则,若属性F是关系R的外码,它与关系S的主码KS相对应(关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值。C#是关系C的主码,也是关系SC中的外码,根据参照完整性规则,外键的值不允许参照不存在的相应表的主键的值,或者外键为空值,所以不可能任意删除关系C中的元组。