2021年5月程序员模拟题上午(一)之十三
摘要:对于【程序员】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2021年5月程序员模拟题上午(一)】部分试题的详解,一起来看看吧~1、某公司的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库
1、某公司的商品(商品号,商品名称,生产商,单价)和仓库(仓库号,地址,电话,商品号,库存量)两个实体之间的关系如表1和表2所示。商品关系的主键是 (34);仓库关系的主键是(35);仓库关系 (36) ,为了解决这一问题,需要将仓库关系分解为(37) 。
A、仓库1(仓库号,地址)和仓库2(仓库号,电话,商品号,库存量)
B、仓库1(仓库号,地址,电话)和仓库2(商品号,库存量)
C、仓库1(仓库号,电话)和仓库2(仓库号,地址,商品号,库存量)
D、 仓库1(仓库号,地址,电话)和仓库2(仓库号,商品号,库存量)
答案:D
答题解析:商品关系的主键是商品号,仓库关系的主键是(仓库号,商品号)。显然,仓库关系存在冗余、修改操作的不一致,以及插入异常和删除异常。例如,仓库号为“01”的商品有3种,其地址就要重复3次,故存在冗余。为了解决仓库关系模式存在的问题,就需要进行模式分解,其中(37)空选项A存在非主属性对主键的部分函数依赖,即“仓库号→电话”。选项B存在的问题是分解属于有损联接,即分解的新关系模式仓库1和仓库2无法恢复到原关系。选项C分解存在的问题与A类同。
2、建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)中的元素分别表示供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→(Sname,Zip,City),Zip→City。a. “供应商”表S属于(38)。b.若要求:供应商代码不能为空,且值是唯一的,供应商的名也是唯一的:零件号不能为空,且值是唯—的;一个供应商可以供应多种零件,而一种零件可以由多个供应商供应。请将下面的SQL语句空缺部分补充完整。CREATE TABLE S(Sno CHAR(5)(39),Sname CHAR (30) UNIQUE,Zip CHAR (8),City CHAR (20) (40)):
A、1NF
B、2NF
C、3NF
D、BCNF
答案:B
答题解析:
"供应商"表S属于2NF,因为表S的主键是Sno,非主属性Sname,Zip,City不存在对主键的部分函数依赖。但是,当2NF消除了非主属性对主键的传递函数依赖,则称为3NF。"供应商"表S不属于 3NF,因为存在传递依赖,即Sno→ Zip,Zip →City。所以正确的答案是B。
要求供应商代码不能为空,且值是唯一的,供应商的名也是唯一的,所以需要用NOT NULL UNIQUE。试题(44)正确的答案是C,因为表S的主键是Sno,所以需要用PRIMARY KEY(Sno)来约束。补充完整的SQL语句如下∶
CREATE TABLE S (Sno CHAR (5)NOT NULL UNIQUE,
Sname CHAR (30) UNIQUE,
ZIP CHAR(8),
City CHAR(20)
PRIMARY KEY(Sno));
3、建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)中的元素分别表示供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→(Sname,Zip,City),Zip→City。a. “供应商”表S属于(38)。b.若要求:供应商代码不能为空,且值是唯一的,供应商的名也是唯一的:零件号不能为空,且值是唯—的;一个供应商可以供应多种零件,而一种零件可以由多个供应商供应。请将下面的SQL语句空缺部分补充完整。CREATE TABLE S(Sno CHAR(5)(39),Sname CHAR (30) UNIQUE,Zip CHAR (8),City CHAR (20) (40)):
A、FOREIGN KEY
B、NOT NULL UNIQUE
C、FOREIGNKEY(Sno)
D、PRIMARY KEY(Sname)
答案:B
答题解析:
"供应商"表S属于2NF,因为表S的主键是Sno,非主属性Sname,Zip,City不存在对主键的部分函数依赖。但是,当2NF消除了非主属性对主键的传递函数依赖,则称为3NF。"供应商"表S不属于 3NF,因为存在传递依赖,即Sno→ Zip,Zip →City。所以正确的答案是B。
要求供应商代码不能为空,且值是唯一的,供应商的名也是唯一的,所以需要用NOT NULL UNIQUE。试题(44)正确的答案是C,因为表S的主键是Sno,所以需要用PRIMARY KEY(Sno)来约束。补充完整的SQL语句如下∶
CREATE TABLE S (Sno CHAR (5)NOT NULL UNIQUE,
Sname CHAR (30) UNIQUE,
ZIP CHAR(8),
City CHAR(20)
PRIMARY KEY(Sno));
查看完整试题>>>
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>