域表达式ab|R(ab)∧R(ba)转换成为等价的关系代数表达式,所列出的式子中 (47) 是不正确的。SQL中集合成员资格的比较操作“元组NOT IN(集合)”中的“NOT IN”与 (48) 操作符等价。SQL中涉及属性AGE是甭是空值的比较操作,写法 (49) 是错误的。类似于“工资在800至5000之间”这种约束,是属于DBS的 (50) 功能。
设关系模式Q是3NF模式,那么, (51) 这种提法是不正确的。
(51)处填()。
A.一定是2NF模式
B.Q可能不是4NF模式
C.Q可能不是BCNF
D.Q一定不是BCNF
参考答案:D
解析:
域表达式{ab|R(ab)∧R(ba)}的含义是取出二元关系只中有对称关系的二元组的集合,即如果(a,b)∈R,则(b,d)∈R。因此如果求R×R后,相当于再求满足“1=4且2=3”的元组的集合。显然选项A是正确的。再看选项B,首先求2=3的条件连接,然后再求1=4的选择,最后求1, 2的投影,所以结果也是正确的。CD不正确。
SQL中的集合比较有4种,分别是集合成员资格比较、集合成员算术比较、空关系测试和重复元组的测试。其中集合成员资格的比较形式为:集合1 IN集合2,其否定形式为:集合1 NOT IN集合2。这里“IN”与算术比较中的“=SOME”等价,“NOT IN”与算术比较中的“< >ALL”等价,其中“<>”相当于“!=”。
SQL中允许属性值为空值,空值用关键字NULL表示。
类似于工资在800至5000元之间这种约束,是属于DBMS的完整性功能。
根据4种范式之间的关系:,可以判断3NF模式必定是2NF模式,BCNF必定是3NF模式,但反之不一定成立。