数据库基础与应用形考册答案
第一次作业 一、单项选择题
1、域是实体中相应属性的(A)。 A、取值范围 B、值 C、名称 D、描述 2、把保存关系定义的关系称为对应数据库的(B)。 A、一般关系 B、元关系 C、特定关系 D、正常关系 3、在一个关系R中,若存在X?Y和X?Z,则存在X?(Y,Z),称此为函数依赖的(C)规则。
A、传递性 B、分解性 C、合并性 D、增广性 4、设一个关系为(R(A、B、C、D、E、F),它的最小函数依赖集为FD={A?B,A?C,D?E,D?F},则该关系的候选码为(D)。 A、(A,B) B、(A,C) C、(A,E) D、(A,D)
5、设D1,D2和D3域的基数分别为2,3,4,则D1*D2*D3的元组数为(B)。 A、9 B、24 C、10 D、20
6、若一个关系为R(学生号,姓名,性别,年龄),则(A)适合作为该关系的主码。 A、学生号 B、姓名 C、性别 D、年龄
7、设一个集合A={3,4,5,6,7},集合B={1,3,5,7,9},则A和B的并集中包含有(C)个元素。 A、10 B、8 C、7 D、6 8、在一个关系R中,若存在X?(Y,Z),则也隐含存在X?Y和X?Z,称此为函数依赖的(B)规则。
A、传递性 B、分解性 C、合并性 D、增广性
9、若一个关系的任何非主属性都不部分依赖于任何候选码,则称该关系最高达到了(B)范式。 A、第一 B、第二 C、第三 D、BC 二、是非题
1、在文件管理阶段,文件之间是相互联系的,在数据库管理阶段,文件之间是相互独立的。(错)
2、分布式数据库系统既支持客户局部应用,又支持客户的全局应用。(对) 3、在对象数据模型中,对象不但能够继承,而且能够嵌套。(对) 4、设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关系为X(学生号,课程号,成绩),求出所有选课的学生信息的运算表达式为II学生号(X)与X的自然连接。(对) 5、在一个关系R中,“职工号”函数决定“姓名”是非平凡函数依赖,但不是完全函数依赖。(错)
6、主码是一种候选码,主码中属性个数没有限制。(对)
7、在一个关系R中,若存在X?Y且X不包含Y,则称X?Y为非平凡依赖,否则,若存在X?Y且X Y,则称X?Y为平凡依赖。(对)
8、在一个关系R中,若存在“学号?系号,系号?系主任“,则学号不能够函数决定系主任。(错)
9、一个关系若存在部分函数依赖和传递函数依赖,则必然会造成数据冗余,但插入、删除和修改操作能够正常进行。(错)
10、在列级完整性约束中,每个约束只能涉及到1个属性,在表级完整性约束中,每个约束可以涉及到多个属性。(对) 三、填空题
1、在人工管理和文件管理阶段,程序设计依赖于数据表示。
2、在文件系统中,不容易做到数据共享,在数据库系统中,容易做到数据共享。
3、在文件系统中,数据没有独立的操作界面,在数据库系统中,数据具有独立的操作界面。 4、分布式数据库系统既支持客户的局部应用,又支持客户的全局应用。 5、在实体中能作为码的属性称为主属性,否则称为非主属性。
6、若实体A和B是多对多的联系,实体B和C是1对1的联系,则实体A和C是多对多的联系。
7、若实体A和B是1对多的联系,实体B和C是1对1的联系,则实体A和C是1对多的联系。
8、任一种数据模型都有型和值的区别。
9、关系中的每一行称为一个元组,每一列称为一个属性。
10、把保存关系定义的关系称为对应数据库的元关系,一个数据库的元关系由DBMS自动建立。
11、在对象数据模型中,对象具有封装性、继承性和多态性。 12、数据库系统中的四类用户分别为数据库管理员、数据库设计员、应用程序员和终端用户。 13、在数据库体系结构中,两级数据映象分别是指外模式和模式之间的数据映象与模式和内模式之间的数据映象。
14、DBMS的主要功能之一是建立和维护数据字典。
15、关系数据模型包括关系运算、关系数据结构和关系完整性规则三个方面。 16、关系中的每个属性只能取单值,关系的结构不允许嵌套。 17、主码是一种候选码,主码中的属性个数没有限制。
18、在候选码中的每个属性被称为主属性,不在任何候选码中的每个属性被称为非主属性。 19、在参照和被参照的关系中,每个外码值或者为空值,或者等于某个主码值。
20、设一个集合A={3,4,5,6,7},集合B={1,3,5,7,9},则A和B的并集中包括有7个元素,A和B的交集中包含有3个元素,A和B的差集中包含有2个元素。 21、设一个关系模式为R(A,B,C),对应的关系内容为R={{1,10,50},{2,10,60},{3,20,72},{4,30,60}},则δB>15(R)属于选择运算,运算结果中包含有2个元组。 22、设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关系为X(学生号,课程号,成绩),则至少选修了课程号为’001’或’002’课程的全部学生信息所对应的运算表达式为 S__ ∏学生号 (δ课程号=’001’ ∨ 课程号=’002’(X))。
23、设一个学生关系为S(学生号,姓名),课程关系为C(课程号,课程名),选课关系为X(学生号,课程号,成绩),则求出所有选修课程信息的运算表达式为X与C的自然连接。 24、在一个关系R中,若属性集X函数决定属性集Y,同时Y函数决定X,则记作为X←→Y,它们之间互为决定因素。 25、在一个关系R中,“职工号”函数决定“姓名”既是_非平凡函数依赖,又是_完全函数依赖。 26、在一个关系R中,若存在“学号→系号,系号→系主任”,则隐含存在着 学号函数决定__系主任。
27. 在一个关系R中,若存在X→(Y,Z),则也隐含存在X→Y和X→Z,称此为函数依赖的分解性规则。
28、在一个关系R中,若X能够函数决定关系R中的每个属性,并且X的任何真子集都不能函数决定R中的每个属性,则称X为关系R的一个候选码。
29. 设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,B→C,D→E},则该关系的候选码为(A,D),该候选码含有2属性。 30. 设一个关系为R(A,B,C,D,E,F,G),它的最小函数依赖集为FD={A→B,C→D,B→E,E→F},则该关系的候选码为(A,C,G),该候选码含有__3____属性。 31、关系数据库中的每个关系必须最低达到第一范式,该范式中的每个属性都是不可再分的。 32、一个关系若存在部分函数依赖和传递函数依赖,则必然会造成带来数据冗余和操作异常(更新异常)。
33、设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,A→C,(C,D)→E},该关系只满足第一范式,若要规范化为第三范式,则将得到3个关系。
34、设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,A→C,A→D,D→E},该关系满足第二范式,若要规范化为高一级的范式,则将得到2个关系。 35、若一个关系的任何非主属性都不部分依赖和传递依赖于任何候选码,则称该关系达到第三范式。
36. 若一个关系中只有一个候选码,并且该关系达到了第三范式,则表明它同时也达到了BC范式,该关系中所有属性的_决定因素__都是候选码。
第二次作业 一、填空题
1.数据库系统的外模式在SQL中称为(视图),它由(基本表)产生出来。。
2.在SQL中建立和删除数据库模式的命令分别为(create schema)和(dropschema)。 3.在SQL中,若一个完整性约束只涉及一个列,则该完整性约束既可以作为(列级)完整性约束定义,也可以作为(表级)完整性约束定义,两者只选其一。
4.在(列级)完整性约束中,每个约束只能涉及到一个属性;在(表级)完整性约束中,每个约束可以涉及多个属性。
5.在SQL中,create table、alter table和drop table命令分别为在数据库中(建立)(修改)和(删除)基本表结构的命令。
6. 向基本表插入数据时,可以在命令中例用关键字(Valves)引出记录值,或者在命令中通过(Select)子句得到一个结果表。
7. 在SQL中,每个视图中的列可以来自不同的(表),它是在原有表的基础上(建立)的逻辑意义上的新关系。
8.在SQL中通过使用视图,能够使在关系规范化时被分解的关系(连接)起来,能够增强数据库的(安全)性。
9.当建立的删除一个视图时,对相应的基本表(没有影响);当修改一个视图时,则对相应的基本表(有影响)。
10. 在SQL新版的查询语句中,(Select)选项实现投影运算,(from)选项实现连接运算,(where)选项实现选择运算。 11.在SQL的查询语句中,(group by)选项实现分组统计功能,(order by)选项实现对结果表的排序功能。。
12.一个数据库应用系统的开发过程大致相继经过(需求分析)、(概念设计)、逻辑设计、物理设计、机器实现、运行维护等六个阶段。 13.需求分析阶段的主要目标是画出(数据流图)、建立(数据字典)和编写(需求说明书)。
14.概念设计阶段的主要任务是根据(需求分析)的结果找出所有数据实体,画出相应的(ER图)。
15.在列举的购物活动中,存在着三个实体,分别称为(商品实体)、(销售实体)和(收款实体)。
16.设计数据库的逻辑结构模式时,首先要设计好(全局模式),然后再设计好各个(外模式)。
17.由概念设计进入逻辑设计时,原来的(1对1)联系或(1对多)联系通常不需要被转换为对应的基本表。 18.机器实现阶段的目标是在计算机系统中得到一个满足设计要求的、功能完善和操作方便的数据库应用系统。
19.在旅店管理中,涉及到的基本表有四个,它们分别为客房表、住宿表、旅客登记表和消费卡表。
20.在旅店管理中,由消费卡表派生出的视图有四个,它们分别为住宿费表伙食费表、娱乐费表和催补款表。
21.在旅店管理中,客房表只派生出一个视图,该视图被称为客房空闲表。
二、根据主教材第四章所给的商品库和教学库,按照下列所给的每条SQL查询语句写出相应的功能。(共20小题)
1.select x.商品代号,分类名,数量,品牌 from 商品表1 x,商品表2 y where x.商品代号=y.商品代号
从商品库中查询出每一种商品的商品代号、分类名、数量和品牌等信息。 2.select count(distinct 产地) as 产地数 from 商品表2 从商品库中查询出所有商品的不同产地的总数。
3.select 课程.课程号,课程.课程名,count(*) as 选课人数 from 课程,选课
where 课程.课程号=选课.课程号 group by 课程.课程号,课程.课程名 从教学库中查询出每门课程被选修的学生数。
4.select x.学生号,y.学生号,y.课程号 from 选课 x,选课 y
where x.学生号=@s1 and y.学生号=@s2 and x.课程号=y.课程号
从教学库中查询出学生号为@s1的学生和学生号为@s2的学生所选修的共同课程的课程号。
5.select * from 课程 where exists (select * from 选课 where 课程.课程号=选课.课程号 )
从教学库中查询出所有已被学生选修的课程。
6.select * from 学生 where 学生号 in (select 学生号 from 选课 group by 学生号 having count(*)<=2) or not exists (select * from 选课 where 学生.学生号=选课.学生号 )
从教学库中查询出最多选修了2门课程(含未选任何课程)的全部学生。
7.select x.*,课程名,课程学分,成绩 from 学生 x,课程 y,选课 z where x.学生号=z.学生号 and y.课程号=z.课程号 order by x.学生号,z.成绩
从教学库中查询出每个学生选课的全部情况,并依次按学生号和成绩排序。
8.select * from 学生 where not exists (select y.课程号
from 学生 x inner join 选课 y on x.学生号=y.学生号 where x.姓名=@a and not exists (select * from 选课
where 学生.学生号=选课.学生号 and y.课程号=选课.课程号 ) ) 从教学库中查询出选修了姓名为@a的学生的全部选课的所有学生。 三、根据教材第四章所给的商品库和教学库,按照下列所给的每种功能写出相应的查询语句。(共16小题)
1.从商品库中查询出数量在10和20之间的商品种数。 select * from 商品表1
where 数量 between 10 and 20 (或where 数量>=10 and 数量<=20)
2.从商品库中查询出每类(即分类名相同)商品的总数量。
select 分类名,sum(数量) as 总数量 from 商品表1 group by 分类名
3.从商品库中查询出比所有商品单价的平均值要高的全部商品。 select * from 商品表1 where 单价>all(select avg(单价) from 商品表1)
4.从商品库中查询出同一产地的商品只有一种的所有商品。 select 商品表1.*,产地 from 商品表1,商品表2 where 商品表1.商品代号=商品表2.商品代号
and 产地 in (select 产地 from 商品表1 x,商品表2 y
where x.商品代号=y.商品代号 group by 产地 having count(*)=1)
5.从教学库中查询出至少选修了姓名为@m1学生所选课程中一门课的全部学生。 select distinct 学生.* from 学生,选课
where 学生.学生号=选课.学生号 and 课程号=any(select 课程号 from 学生,选课 where 学生.学生号=选课.学生号 and 姓名=@m1 )