某销售公司数据库的仓库关系模式为:仓库(仓库号,地址,电话,商品号,库存量),其函数依赖集F={仓库号→地址,仓库号→电话,(仓库号,商品号)→库存量}。以下描述正确的是()。A.“仓库号”为仓库关系的主键,该关系模式属于1范式B.“仓库号”为仓库关系的主键,该关系模式属于2范式C.“仓库号,商品号”为仓库关系的主键,该关系模式属于1范式D.“仓库号,商品号”为仓库关系的主键,该关系模式属于2范式

题目
某销售公司数据库的仓库关系模式为:仓库(仓库号,地址,电话,商品号,库存量),其函数依赖集F={仓库号→地址,仓库号→电话,(仓库号,商品号)→库存量}。以下描述正确的是()。

A.“仓库号”为仓库关系的主键,该关系模式属于1范式

B.“仓库号”为仓库关系的主键,该关系模式属于2范式

C.“仓库号,商品号”为仓库关系的主键,该关系模式属于1范式

D.“仓库号,商品号”为仓库关系的主键,该关系模式属于2范式


相似考题
更多“某销售公司数据库的仓库关系模式为:仓库(仓库号,地址,电话,商品号,库存量),其函数依赖集F={仓库号→地址,仓库号→电话,(仓库号,商品号)→库存量}。以下描述正确的是()。 ”相关问题
  • 第1题:

    检索那些城市至少有一个仓库的职工年龄在60以上的正确语句是( )。

    A.SELECT城市FROM仓库WHERE仓库号 IN; SELECT仓库号FROM职工WHERE年龄>60

    B.SELECT城市FROM仓库WHERE仓库号 IN; (SELECT仓库号FROM职工WHERE年龄>60)

    C.SELECT仓库号FROM职工WHERE年龄>60 IN; SELECT城市FROM仓库WHERE仓库号

    D.SEIECT仓库号FROM职工WHERE年龄>60IN; (SELECT城市FROM仓库WHERE仓库号)


    正确答案:B
    解析:本题考查的是SQL数套查询。该查询功能是通过子查询查找有职工年龄在60岁以上的仓库号集合,然后在主查询中查找仓库号在这个集合中的记录,输出该仓库的城市信息,IN相当于集合运算符∈。

  • 第2题:

    利用SQL语句,检索仓库中至少有一名职工的仓库信息,正确的命令是______.

    A.SELECT。FROM仓库表WHEREIN; (SELECT仓库号FROM职工表)

    B.SELECT 2p FROM仓库表WHERENOTm; (SELECT仓库号FROM职工表)

    C.SELECT::FROM仓库表WHERE仓库号EXISTS; (SELECT*FROM职工表WHERE仓库号:仓库表.仓库号)

    D.SELECT*FROM仓库表WHEREEXISTS; (SEL。E(:T*FROM职工表WHERE仓库号:仓库表.仓库号)


    正确答案:D
    解析:利用EXISTS或NOTEXISTS,可用来检查在子查询中是否有结果返回。利用运算符IN来表示,可写成如下格式: SELECT*FROM仓库表WHERE仓库IN; (SELECT仓库号FROM职工表)

  • 第3题:

    工厂的仓库管理数据库的部分关系模式如下所示:

    仓库(仓库号,面积,负责人,电话)

    原材料(编号,名称,数量,储备量,仓库号)

    要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表2-1和表2-2所示。

    根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。

    CREATE TABLE 仓库(仓库号CHAR(4),

    面积 INT,

    负责人 CHAR(8),

    电话 CHAR(8),

    (a)); //主键定义

    CREATE TABLE 原材料(编号 CHAR(4) (b), //主键定义

    名称 CHAR(16),

    数量 INT,

    储备量 INT,

    仓库号 (c),

    (d)); //外键定义


    正确答案:(a) PRIMARY KEY 仓库号 (b) PRIMARY KEY 或 NOT NULL UNIQUE 或NOT NULL PRIMARY KEY (c) CHAR (4) (d) FOREIGN KEY 仓库号REFERENCES 仓库(仓库号)
    (a) PRIMARY KEY 仓库号 (b) PRIMARY KEY 或 NOT NULL UNIQUE 或NOT NULL PRIMARY KEY (c) CHAR (4) (d) FOREIGN KEY 仓库号REFERENCES 仓库(仓库号) 解析:本问题考查应试者对SQL数据库定义语言的掌握。通过给出的关系模式及关系实例,完成数据库定义语句中的主键及外键的定义部分。主码的定义可以有3种:在列级约束中用NOT NULL UNIQUE或PRIMARY KEY指定;在表级约束中用PRIMARY KEY主键,的方式定义。前两种方法只适用于单一属性作主码的情况,后一种适用于任何情况。参照完整性的指定使用FOREIGN KEY外键>REFERENCES被参照关系>(《被参照属性>)的方式定义,参照关系的域应和被参照数据的域相同。

  • 第4题:

    ● 某超市的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个基本关系如表1和表2所示。

    a. 仓库关系的主键是 (37) ,该关系没有达到第三范式的原因是 (38) ;

    b. 查询联想生产的激光打印机的总库存量的SQL语句如下:

    SELECT 商品名称, (39)

    FROM 商品,仓库

    WHERE (40) AND (41) ;

    c. 若仓库关系的地址不能为空,请将下述仓库关系SQL语句的空缺部分补充完整

    CREATE TABLE 仓库(仓库号CHAR(2),

    地址 CHAR(20) (42) ,

    电话 CHAR(20),

    商品号 CHAR(5),

    库存量NUMERIC(5),

    (43) ,

    (44) ) ;

    (37)

    A. 仓库号

    B. 商品号,地址

    C. 仓库号,地址

    D. 仓库号,商品号

    (38)

    A. 没有消除非主属性对码的部分函数依赖,如:仓库号→电话

    B. 没有消除非主属性对码的部分函数依赖,如:地址→电话

    C. 只消除了非主属性对码的部分函数依赖,而未消除传递函数依赖

    D. 只消除了非主属性对码的传递函数依赖,而未消除部分函数依赖

    (39)

    A. NUMBER(库存量)

    B. SUM(库存量)

    C. COUNT(库存量)

    D. TOTAL(库存量)

    (40)

    A. 生产商=联想

    B. 仓库. 生产商=联想

    C. 生产商='联想'

    D. 仓库. 生产商='联想'

    (41)

    A. 商品名称=激光打印机 AND 商品.商品号=仓库.商品号

    B. 商品名称='激光打印机' AND 商品.商品号=仓库.商品号

    C. 商品名称=激光打印机 OR 商品.商品号=仓库.商品号

    D. 商品名称='激光打印机' OR 商品.商品号=仓库.商品号

    (42)

    A. NOT NULL

    B. UNIQUE

    C. NOT NULL UNIQUE

    D. PRIMARY KEY

    (43)

    A. PRIMARY KEY(仓库号)

    B. PRIMARY KEY(仓库号,商品号)

    C. PRIMARY KEY(商品号,地址)

    D. PRIMARY KEY(仓库号,地址)

    (44)

    A. FOREIGN KEY(仓库号)REFERENCES 仓库号

    B. FOREIGN KEY(仓库号)REFERENCES 仓库(仓库号)

    C. FOREIGN KEY(商品号)REFERENCES 仓库(商品号)

    D. FOREIGN KEY(商品号)REFERENCES 商品(商品号)


    正确答案:D,A,B,C,B,A,B,D

  • 第5题:

    ● 某公司的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个实体之间的关系如表1和表2所示。

    商品关系的主键是 (42) ;仓库关系的主键是 (43) ;仓库关系 (44) ,为了解决这一问题,需要将仓库关系分解为 (45) 。

    (42)

    A. 商品号

    B. 商品名称

    C. 生产商

    D. 单价

    (43)

    A. 仓库号,地址

    B. 仓库号,电话

    C. 仓库号,商品号

    D. 地址,电话

    (44)

    A. 无冗余、无插入异常,但存在删除异常

    B. 无冗余,但存在插入异常和删除异常

    C. 存在冗余,但不存在修改操作的不一致

    D. 存在冗余、修改操作的不一致,以及插入异常和删除异常

    (45)

    A. 仓库1(仓库号,地址)和仓库2(仓库号,电话,商品号,库存量)

    B. 仓库1(仓库号,地址,电话)和仓库2(商品号,库存量)

    C. 仓库1(仓库号,电话)和仓库2(仓库号,地址,商品号,库存量)

    D. 仓库1(仓库号,地址,电话)和仓库2(仓库号,商品号,库存量)


    正确答案:A,C,D,D

  • 第6题:

    某超市的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个基本关系如表1和表2所示。

    A.仓库关系的主键是(37),该关系没有达到第三范式的原因是(38); B.查询联想生产的激光打印机的总库存量的SQL语句如下: SELECT 商品名称, (39) FROM商品,仓库 WHERE (40) AND (41); C.若仓库关系的地址不能为空,请将下述仓库关系SQL语句的空缺部分补充完整。 CREATE TABLE仓库(仓库号CHAR(2), 地址 CHAR(20) (42), 电话 CHAR(20), 商品号 CHAR(5), 库存量 NUMERIC(5), (43), (44);

    A.仓库号

    B.商品号,地址

    C.仓库号,地址

    D.仓库号,商品号


    正确答案:D
    解析:本题考查应试者对范式、SQL语言的掌握程度。仓库关系的主键是(仓库号,商品号);仓库关系不属于第三范式的原因是因为仓库号可以决定非主属性(地址,电话),非主属性地址、电话存在对主键的部分函数依赖。

  • 第7题:

    以下四题使用如下的仓库表和职工表。

    仓库表仓库号所在城市

    A1北京

    A2上海

    A3天津

    A4广州

    职工表职工号仓库号工资

    M1A12000.00

    M3A32500.00

    M4A41800.00

    M5A21500.00

    M6A41200.00

    检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是 ______。

    A.SELECT职工号,工资FROM职工表; WHERE仓库表.所在城市;“广州”

    B.SELECT职工号,工资FROM职工表; WHERE仓库表.仓库号;职工表.仓库号; AND仓库表.所在城市;“广州”

    C.SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号二职工表.仓库号; AND仓库表.所在城市;“广州”

    D.SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号:职工表.仓库号; OR仓库表.所在堀市=“广州”


    正确答案:C

  • 第8题:

    以下5题使用下列数据表。

    仓库(仓库号C(3)、所在地C(8)、人数N(2))

    职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)

    检索有职工的工资大于或等于“WHl”仓库中所有职工“工资”的仓库号,正确的命令是( )。

    A.SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资>=ANY; (SELECT MAX(工资) FROM 职工 WHERE 仓库号="WH1")

    B.SELECT DISTINC T仓库号 FROM 职工 WHERE 工资>=ANY; (SELECT 工资 FROM 职工 WHERE 仓库号="WH1")

    C.SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资>=ALL; (SELECT 工资 FROM 职工 WHERE 仓库号="WH1")

    D.SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资>=ALL; (SELECT MAX(工资) FROM 职工 WHERE 仓库号="WH1")


    正确答案:C
    解析:本题的SQL语句功能是检索有职工工资大于等于仓库号“WH1”中所有职工工资的仓库号。本题中通过于查询检索“WH1”仓库中所有职工的工资,然后在主查询中检索有职工工资大于子查询所查的工资记录,即大于所有“WH1”中所有职工工资的职工所在的仓库号,DISTINCT短语的功能是去掉查询结果中重复的记录。在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:表达式>比较运算符>[ANY|ALL|SOME](子查询)。其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。

  • 第9题:

    给出在仓库“WHl”或“WH2”工作,且年龄小于40岁的职工号和姓名,正确的命令是( )。

    A)SELECT 职工号,姓名 FROM 职工:

    WHERE 年龄<40 AND 仓库号=”WH1”OR 仓库号=”WH2”

    B)SELECT职工号,姓名 FROM 职工;

    WHERE年龄<40 AND(仓库号=”WH1”AND 仓库号=”WH2”)

    C)SELECT职工号,姓名 FROM 职工;

    WHERE年龄<40 OR 工仓库号=”WH1”OR 仓库号=”WH2”

    D)SELECT职工号,姓名 FROM 职工:

    WHERE年龄<40 AND(仓库号=”WH1”OR 仓库号=”WH2”)


    正确答案:D
    依据题意,本查询应该有两个筛选条件,即“仓库=''WH1 ”OR仓库=“WH2”和“年龄<40”,并且这两个条件要同时满足,也就是说本题应先进行或运算,即先判断“仓库=WH1”OR仓库="WH2””,再将此结果与“年龄<40”的条件进行与运算,又因为与运算比或运算的优先级高,所以要将或运算用圆括号括起来。

  • 第10题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是( )。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为(请作答此空)。

    A.仓库1(仓库号,地址)和仓库2(仓库号,电话,商品号,库存量)
    B.仓库1(仓库号,地址,电话)和仓库2(商品号,库存量)
    C.仓库1(仓库号,电话)和仓库2(仓库号,地址,商品号,库存量)
    D.仓库1(仓库号,地址,电话)和仓库2(仓库号,商品号,库存量)

    答案:D
    解析:
    本题正确的答案D。为了解决仓库关系模式存在的问题需要进行模式分解,其中,选项A分解存在的问题是仓库2不属于第三范式,因为存在非主属性对码的部分函数依赖,即仓库号→电话。选项B分解存在的问题是分解有损连接,即分解的新关系模式仓库1和仓库2无法恢复到原关系。选项C分解存在的问题与A类同,分析略。
    选项D分解是即保持函数依赖,又无损连接,分解的结果如下:

  • 第11题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是(请作答此空)。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为( )。

    A.仓库号
    B.地址
    C.电话
    D.商品号

    答案:D
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第12题:

    商品S分别存放在1号仓库和2号仓库,在()中可查看每一个仓库的销售情况。

    • A、库存状况表
    • B、库存商品分别表
    • C、商品销售排行
    • D、商品销售分布表

    正确答案:D

  • 第13题:

    检索至少有一名职工信息的“仓库号”及仓库的“所在地”和“人数”,正确的SQL命令是( )。

    A.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE IN; (SELECT 仓库号 FROM 职工 WHERE 仓库号=职工.仓库号)

    B.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE 仓库号 IN; SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)

    C.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE NOT EXISTS; (SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)

    D.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE EXISTS; (SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)


    正确答案:D
    解析:本题中EXISTS属于SQL查询谓词,EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。本题SQL查询中的子查询查询的是“职12”表中“仓库号”等于“仓库”表中“仓库号”的数据,然后在外层查询中检索“仓库”表中的“仓库号”是否存在与子查询的查询结果中,将存在的“仓库号”显示其“仓库号”、“所在地”和“人数”的信息。

  • 第14题:

    在SQL语句中,与表达式“仓库号NOT IN(“wh1”,“wh2”)”功能相同的表达式是

    A.仓库号=“wh1”AND仓库号:“wh2”

    B.仓库号!=“wh1”OR仓库号:=“wh2”

    C.仓库号<>“wh1”OR仓库号!=“wh2”

    D.仓库号!=“wh1”AND仓库号!=“wh2”


    正确答案:D
    解析:题干中给出的表达式:“仓库号NOT IN(“wh1”,“wh2”)”表示仓库号不是“wh1”并且不是“wh2”。符号“!=”表示的是不等于,因此正确答案为选项D。选项A表示仓库号等于“wh1”并且等于“wh2”,选项B表示仓库号不等于“wh1”或者等于“wh2”。选项C表示仓库号不等于“wh1”或者不等于“wh2”。因此选项 D为正确答案。

  • 第15题:

    使用如下数据表,回答下列各题: 仓库表(仓库号,所在城市) 职工表(职工号,仓库号,工资) 其中,仓库号、所在城市和职工号字段为字符型,工资字段为数值型。 {TS}检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是( )。

    A. SELECT职工号,工资FROM职工表; WHERE仓库表.所在城市=”广州”

    B. SELECT职工号,工资FROM职工表; WHERE仓库表.仓库号=职工表.仓库号; AND仓库表.所在城市=”广州”

    C. SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号=职工表.仓库号; AND仓库表.所在城市=”广州”

    D. SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号=职工表.仓库号; 0R仓库表.所在城市=”广州”


    正确答案:C
    本题中,可通过仓库号字段将仓库表和职工表进行连接,从而查询仓库所在地是“广州”的记录。

  • 第16题:

    在SQL语句中,与表达式“仓库号NOT IN("whl ","wh2")”功能相同的表达式是A)仓库号="wh1"AND仓库号="wh2"B)仓库号!="whl" OR仓库号="wh2"C) 仓库号<>"wh 1" OR仓库号!="wh2"D)仓库号!="whl" AND仓库号!= "wh2"


    正确答案:D
    题千中给出的表达式:“仓库号 NOT IN("wh1""wh2")”表示仓库号不是"wh1"并且不是"wh2"。符号“!=”表示的是,不等于,因此正确答案为选项D。选项A表仓库号等于"whl"并且等于"wh2",选项B表示仓库号不等于"whl"或者等于"wh2"。选项C表示仓库号不等于"whl"或者不等于"wh2"。因此选项D为正确答案。

  • 第17题:

    1号仓库与2号仓库共存粮450t,现从1号仓库运出存粮的60%,从2号仓库运出存粮的40%,结果2号仓库的余粮比1号仓库的余粮多30t1号仓库与2号仓库原来各存粮多少吨?

  • 第18题:

    找出在仓库面积大于500的仓库中工作的职工号,以及这些职工工作所在的城市,正确的命令是

    A.SELECT职工号,城市FROM职工; WHERE(面积>500)OR(职工.仓库号=仓库.仓库号)

    B.SELECT职工号,城市FROM职工; WHERE(面积>500)AND(职工.仓库号=仓库.仓库号)

    C.SELECT职工号,城市FROM仓库,职工; WHERE(面积>500)OR(职工.仓库号=仓库.仓库号)

    D.SELECT职工号,城市FROM仓库,职工; WHERE(面积>500)AND(职工.仓库号=仓库.仓库号)


    正确答案:D
    解析:选项A)中缺少查询的“仓库”表,且查询条件联接有误;选项B)中同样缺少查询的“仓库”表;选项C)中查询条件错误,应使用AND进行条件联接,而不是OR。

  • 第19题:

    利用SQL语句,检索仓库中至少有一名职工的仓库信息,正确的命令是

    A.SELECT*FROM仓库表WHERE IN; (SELECT仓库号FROM职工表)

    B.SELECT*FROM仓库表WHERE NOT IN; (SELECT仓库号FROM职工表)

    C.SELECT*FROM仓库表WHERE仓库号EXISTS; (SELECT*FROM职工表WHERE仓库号=仓库表.仓库号)

    D.SELECT*FROM仓库表WHERE EXISTS; (SELECT*FROM职工表WHERE仓库号=仓库表.仓库号)


    正确答案:D
    解析:利用EXISTS或NOTEXISTS,可用来检查在子查询中是否有结果返回。利用运算符IN来表示,可写成如下格式:SELECT*FROM仓库表WHERE仓库IN;(SELECT仓库号FROM职工表)

  • 第20题:

    检索至少有一名职工信息的“仓库号”及仓库的“所在地”和“人数”,正确的SQL命令是( )。

    A)SELECT仓库号,所在地,人数FROM仓库WHERE IN;

    (SELECT仓库号FROM职工WHERE仓库号=职工.仓库号)

    B)SELECT仓库号,所在地,人数FROM仓库WHERE仓库号IN;

    SELECT仓库号FROM职工WHERE仓库号=仓库.仓库号

    C)SELECT仓库号,所在地,人数FROM仓库WHERE NOT EXISTS;

    (SELECT仓库号FROM职工WHERE仓库号=仓库.仓库号)

    D)SELECT仓库号,所在地,人数FROM仓库WHERE EXISTS;

    (SELECT仓库号FROM职工WHERE仓库号=仓库.仓库号)


    正确答案:D
    本题中EXISTS属于SQL查询谓词, EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。选项D)的SQL查询中的子查询查询的是“职工”表中“仓库号”等于“仓库”表中“仓库号”的数据,然后在外层查询中检索“仓库”表中的“仓库号”是否存在于子查询的查询结果中,将存在的“仓库号”显示其“仓库号”、“所在地”和“人数”的信息。

  • 第21题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是(请作答此空),外键是( )。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为( )。

    A.仓库号
    B.仓库号,商品号
    C.仓库号,电话
    D.地址,电话

    答案:B
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第22题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是( )。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是( )。
    仓库关系模式(请作答此空),为了解决这一问题,需要将仓库关系分解为( )。

    A.存在冗余、插入异常和删除异常,以及修改操作的不一致
    B.不存在冗余,但存在插入异常和删除异常
    C.不存在修改操作的不一致,但存在冗余和插入异常
    D.不存在冗余、插入异常,但存在删除异常和修改操作的不一致

    答案:A
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余

  • 第23题:

    某公司销售数据库的商品、仓库关系模式及函数依赖集F1、F2如下:
    商品(商品号,商品名称,生产商,单价),F1={商品号→商品名称,商品号→生产商,商品号→单价)},商品关系的主键是(请作答此空)。仓库(仓库号,地址,电话,商品号,库存量),F2={仓库号→(地址,电话),(仓库号,商品号)→库存量}。仓库关系的主键是( ),外键是( )。
    仓库关系模式( ),为了解决这一问题,需要将仓库关系分解为( )。

    A.商品号
    B.商品号,商品名称
    C.商品号,生产商
    D.商品名称,生产商

    答案:A
    解析:
    本题考查应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。
    从商品关系的函数依赖集F1可以导出商品号决定商品关系的全属性,所以商品号是商品关系的主键。
    从仓库关系的函数依赖集F2可以导出(仓库号,商品号)决定仓库关系的全属性,所以仓库关系的主键是(仓库号,商品号)。又由于商品号是商品关系的主键,故商品号是仓库关系的外键。
    仓库关系存在冗余、插入异常和删除异常,以及修改操作的不一致。例如,仓库号为"12"的商品有3种,其地址就要重复3次,如下表所示,故仓库关系存在冗余