建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为: Sno→(Sname,Zip,City),Zip→City。“零件”表P(Pno,Pname,

admin2019-03-04  32

问题 建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为: Sno→(Sname,Zip,City),Zip→City。“零件”表P(Pno,Pname,Color,Weight, City),表示零件号、零件名、颜色、重量及产地。表S与表P之间的关系SP(Sno,Pno, Price,Qty)表示供应商代码、零件号、价格、数量。
  a.“供应商”表S属于(17)。
  b.若要求供应商名不能取重复值,关系的主码是Sno。请将下面的SQL语句空缺部分补充完整。
   CREATE TABLE S(Sno  CHAR(5),
   Sname CHAR(30)  (18),
   Zip  CHAR(8),
   City  CHAR(20)
     (19) );
   c.查询供应“红”色零件,价格低于500,且数量大于200的供应商代码、供应商名、零件号、价格及数量的SQL语句如下:
   SELECT  Sno,Sname,Pno,Price,Qty  FROM S,SP
   WHERE Pno IN(SELECT Pno FROM P WHERE  (20) )
   AND (21);

选项 A、SP.Price<500
B、SP.Qty>200
C、SP.Price<500 AND SP.Qty>200
D、Color=’红’

答案C

解析 试题(17)的详细分析见(3)题,根据“供应商”表函数依赖为Sno→(Sname, Zip,City),每个非主属性完全函数依赖于候选键Sno,但Zip→City,非主属性Zip传递依赖于“供应商”关系的候选键,所以“供应商”关系属于2NF。试题(18)主要是约束供应商名不取重复值,所以应填UNIQUE,试题(19)是确定关系的主码Sno,所以应填PRIMARY KEY(Sno),试题(20)(21)是要求查询满足“红”色零件,价格低于500,且数量大于20(这三个条件,(20)空是在关系P里,而关系P只含有颜色属性,不包含价格和数量属性,所以(20)应填Color=’红’,价格和数量属性包含在关系SP中,所以(21)应填 SP.Price<500 AND SP.Qty>200。
转载请注明原文地址:https://jikaoti.com/ti/vBx7FFFM
0

最新回复(0)