问题 单项选择题

某数据库中有员工关系E、产品关系P、仓库关系W和库存关系I,其中,员工关系E (employeeID,name,department)中的属性为:员工编号,姓名,部门;产品关系P(productID, name,model,size,color)中的属性为:产品编号,产品名称,型号,尺寸,颜色;仓库关系W (warehouseID,name,address,employeeID)中的属性为:仓库编号,仓库名称,地址,负责人编号:库存关系I(warehouseID,productID,quantity)中的属性为:仓库编号,产品编号和产品数量。

c.c.若需得到在所有仓库中都存在的产品的名称,则对应的查询语句为: SELECT name FROM P WHERE() (SELECT*FROM W WHERE NOT EXISTS (SELECT*FROM I WHERE P.productID=I.productID AND W.warehouseID=I.warehouseID))

A.EXISTS

B.NOTEXISTS

C.IN

D.NOTm

答案

参考答案:B

解析:

完整性规则提供了一种手段来保证当授权用户对数据库作修改时不会破坏数据的二致性,因此,完整性规则防止的是对数据的意外破坏。关系模型的完整性规则是对关系的某种约束条件。完整性共分为三类,即实体完整性、参照完整性和用户定义完整性。

(1)实体完整性:规定基本关系R的主属性A不能取空值。

(2)参照完整性:现实世界中的实体之间往往存在某种联系,在关系模型中实体与实体之间的联系是用关系来描述的,这样自然就存在着关系与关系间的引用。参照完整性规定,若 F是基本关系R的外码,它与基本关系S的主码相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值),或者等于 S中某个元组的主码值。

(3)用户定义完整性:就是针对某一具体的关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求,由应用的环境决定。

至于后面两空可根据SQL语言的规则填写适当的语句。

填空题
单项选择题