单选题 下面第(23)~(24)题基于以下说明:设有如下两个关系,若雇员信息的主键是雇员号,部门信息表的主键是部门号。假设雇员信息表中的工资最低为800(包括800),最高不能超过2000。另外,这里假定DBMS不支持级联删除和级联更新功能。
雇员信息表
雇员号
雇员名
部门号
工资
001
张山
02
2000
010
王宏达
01
1200
056
马林生
02
1000
101
赵敏
04
1500
                                         部门信息表
部门号
部门名
主任
01
业务部
李建
02
销售部
应伟东
03
服务部
周垠
04
财务部
陈力胜


单选题 今对以上两个关系做如下操作:
Ⅰ.从雇员表中删除行(‘010’,‘王宏达’,‘01’,1200)。
Ⅱ.从部门表中删除行(‘01’,‘业务部’,‘李建’)。
Ⅲ.从部门表中将部门名为‘服务部’的行删除。
Ⅳ.将雇员表中雇员号=‘010’的工资改为2600元。
在上述所给的操作中,哪个(些)操作能被执行?
【正确答案】 A
【答案解析】[解析] 注意到雇员信息的主键是雇员号,外键是部门号;部门信息表的主键是部门号。另外,“雇员信息表中的工资最低为800(包括800),最高不能超过2000”属于用户自定义的完整性规则。所以对题目中给出的操作仔细验证是否违背了关系的3类完整性规则,就可以很容易判断出哪些操作是否可以被执行。
删除参照关系(即外码所在的关系)中的元组肯定不会破坏上述3类完整性规则,但向参照关系中插入元组或者更新参照关系中的元组有可能会破坏完整性规则;向被参照关系中插入元组也肯定不会破坏参照完整性规则,但有可能破坏实体完整性规则和用户自定义的完整性规则,更新被参照关系中的元组有可能破坏3类完整性规则,删除被参照关系中的元组只有可能破坏参照完整性规则。这些情形总结如下。
在对参照关系和被参照关系进行操作时的各种可能破坏3类完整性规则的情形。
[*]
单选题 在下列所给的操作中,哪个操作能被执行?
【正确答案】 B
【答案解析】[解析] 参照(23)题的解析。