单选题
设有如下说明,请回答(23)~(24)小题:
设有如下图所示的两个关系S(sno,sname,sex)和SC(sno,cno,grade)。其中关系S的主码是sno,关系SC的主码是(sno,cno),且关系SC的属性"sno"是它的外码。要求grade的取值只能是0-100之间的整数。
单选题
关系数据库必须满足以下3类完整性规则: Ⅰ.实体完整性规则 Ⅱ.参照完整性规则 Ⅲ.用户定义的完整性规则上述两个关系违背了哪个(些)完整性规则?( )
A、
仅Ⅰ
B、
仅Ⅱ和Ⅲ
C、
仅Ⅰ和Ⅱ
D、
Ⅰ、Ⅱ和Ⅲ
【正确答案】
D
【答案解析】
[解析] 本题考查关系的完整性约束。实体完整性规则规定关系的所有主属性都不能为空值,而不仅是主码整体不能取空值,关系SC中有空值,违背了实体完整性;参照完整性规则要求外键的值不允许参照不存在的主键的值,或者,外键为空值,关系SC中参照了关系S中不存在的值S30,违背了参照完整性;用户定义的完整性规则由用户根据应用需要定义,题目中定义了grade的取值只能是0~100之间的整数,关系SC中grade值违背了完整性要求。故本题选择D。
单选题
有如下的SOL语句: Ⅰ.SELECT sname FROM s,sc WHERE grade<60 Ⅱ.SELECT sname FROMs WHERE sno IN (SELECT sno FROM sc WHERE grade<60) Ⅲ.SELECT sname FROM s,sc WHERE s.sno=sc.sno AND grade<60若要查找分数(grade)不及格的学生姓名(sname),以上正确的有哪些? ( )
A、
Ⅰ和Ⅱ
B、
Ⅰ和Ⅲ
C、
Ⅱ和Ⅲ
D、
Ⅰ、Ⅱ和Ⅲ
【正确答案】
C
【答案解析】
[解析] Ⅰ没有指明s、sc之间的关联。Ⅱ先查找所有不及格学生的学号sno放在一个集合,然后查找学号sno对应的学生姓名sname,是正确的。Ⅲ指明了关系s与sc之间的关系,也是正确的。故本题选择C。
提交答案
关闭