软考中级

工厂的仓库管理数据库的部分关系模式如下所示:仓库(仓库号,面积,负责人,电话)原材料(编号,名称,数量,储备量,仓库号)要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表2-1和表2-2所示。根据上述说明,用SQL定义“原材料”和“仓库”的关系模式如下,请在空缺处填入正确的内容。CREATE TABLE 仓库(仓库号CHAR(4),面积 INT,负责人 CHAR(8),电话 CHAR(8),(a)); //主键定义CREATE TABLE 原材料(编号 CHAR(4) (b), /

题目

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

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

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

要求一种原材料只能存放在同一仓库中。“仓库”和“原材料”的关系实例分别如表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被参照关系>(《被参照属性>)的方式定义,参照关系的域应和被参照数据的域相同。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

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

第2题:

某公司销售数据库的商品、仓库关系模式及函数依赖集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分解是即保持函数依赖,又无损连接,分解的结果如下:

第3题:

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

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

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

第4题:

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

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

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

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

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


参考答案C

第5题:

阅读下列说明,回答问题1至问题5。

【说明】

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

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

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

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

根据上述说明,用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语句来看,其4个属性已分别有了定义,所以,(a)空处应该是定义主键约束(事实上,所给定的SQL语句的注释已经说明了)。因此,(a)空应该填写“Primary Key仓库号”。
(b)空处也是填写主键定义语句。在关系“原材料(编号,名称,数量,储备量,仓库号)”中,显然“编号”主键,因此,(b)空填写“Primary Key”,或者与其等价的语句,例如:Not Null Unique、Not Null Primary Key等。
(c)空和(d)空要求填写“仓库号”后半部分。在关系“原材料”中,“仓库号”是外键(相对于关系“仓库”的“仓库号”)。外键的数据类型和大小要和其所在关系的属性完全一致,而在关系“仓库”的定义中,“仓库号”的定义为“Char(4)”,因此, (c)空应填写“Char(4)”。(d)空应填写“ForeignKey仓库号References仓库(仓库号)”。

第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题:

● 某公司的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个实体之间的关系如表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

第8题:

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

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

A.商品号

B.商品名称

C.生产商

D.单价


正确答案:A
解析:本题考查的是应试者对关系模式中主键、外键和模式分解及相关知识的掌握程度。关系模式中主键方面的基础知识。商品关系的主键是商品号;仓库关系的主键是(仓库号,商品号)。试题(42)的正确答案是A。

第9题:

某工厂的仓库管理数据库中有两个关系模式:

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

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

要求一种原材料只能存放在同一仓库中。

写出“查询存放原材料数量最多的仓库号”的SQL语句。


正确答案:SELECT仓库号 FROM 原材料 GROUP BY 仓库号 HAVING SUM (数量)>=ALL(SELECT SUM(数量) FROM 原材料 GROUP BY 仓库号);
SELECT仓库号 FROM 原材料 GROUP BY 仓库号 HAVING SUM (数量)>=ALL(SELECT SUM(数量) FROM 原材料 GROUP BY 仓库号);