有关系模式:系(系号,系名,系办公电话),教师(教师号,教师名,职称,聘任日期,工资,所在系号)。现要定义下列约束: Ⅰ.系号是系关系的主码,教师号是教师关系的主码 Ⅱ.职称列的取值只能为"教授","副教授","讲师","助理"和"其他" Ⅲ.教授的默认工

admin2020-12-02  27

问题 有关系模式:系(系号,系名,系办公电话),教师(教师号,教师名,职称,聘任日期,工资,所在系号)。现要定义下列约束:
Ⅰ.系号是系关系的主码,教师号是教师关系的主码
Ⅱ.职称列的取值只能为"教授","副教授","讲师","助理"和"其他"
Ⅲ.教授的默认工资为10000元,副教授的默认工资为8000元,讲师的默认工资为5000元
Ⅳ.每个教师的所在系号不能为空,且其值必须在系关系中存在
若在数据库中实现以上约束,需要使用触发器才能实现的是(       )

选项 A、仅Ⅰ和Ⅱ
B、仅Ⅲ和Ⅳ
C、仅Ⅲ
D、仅Ⅰ和Ⅳ

答案B

解析 触发器使用场合为完成比CHECK约束更复杂的数据约束,为保证数据库性能而维护的非规范化数据,实现复杂的业务规则。CHECK只能实现同一个表的列之间的取值约束。Ⅲ是对同一个列中元素取值之间的约束,Ⅳ选项是在不同表中列之间的取值约束关系都不能用CHECK实现,但可以用外键约束加非空约束实现。所以答案为C。
转载请注明原文地址:https://jikaoti.com/ti/tc37FFFM
0

最新回复(0)