吕梁学院2011级数据库复习题 下载本文

(1) SQL语言是( B )语言。

A、层次数据库 B、关系数据库 C、网状数据库 D、非数据库

(2) SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT、DELETE、UPDATE

实现的是哪类功能( B )。

A、数据查询 B、数据操纵 C、数据定义 D、数据控制

(3) 下列关于视图的说法,哪一条是不正确的( C )。

A、视图是外模式 B、视图是虚表

C、使用视图可以加快查询语句的执行速度 D、使用视图可以简化查询语句的编写

(4) SQL语句中,与 X between 10 and 20等效的是(D )。

A、X in (10,20) B、X<10 or X>20 C、X>10 and X<20 D、X>=10 and X<=20

(5) 下列SQL语句中,创建关系表的是( B )。

A、ALTER B、CREATE C、UPDATE D、INSERT

(6) 读者(读者号,姓名,性别,年龄)中,读者号是主码,已有记录如下图:

读者号 D001 D002 D003 姓名 王平 李峰 王璐 性别 男 男 女 年龄 20 28 34 在该表中插入一条新的记录,以下哪一条是正确的( C )。 A、insert into 读者values(‘D006’,‘男’, ‘王明’,23)

B、insert into 读者(读者号,姓名,性别,年龄)values(‘D003’,‘王明’,‘男’,23) C、insert into 读者(姓名,读者号,年龄)values(‘王明’,‘D006’,23) D、insert into 读者values(‘王明’,23)

13. 简答题

简述where子句和having子句的异同点。

答:where和having子句同是条件筛选子句,但作用的对象不同,WHERE子句作用于数据源,从中选择

满足条件的元组,HAVING短语作用于结果集的分组,从中选择满足条件的组;HAVING短语必须与GROUP BY子句合用,不能单独使用。 14. 语法题

对于学生选课关系,其关系模式如下: 职工(职工号,姓名,年龄,性别)

社会团体(编号,名称,负责人,活动地点) 参加(职工号, 编号,参加日期)

其中职工表的主码是职工号;社会团体表的主码是编号,外码是负责人;参加表的主码是职工号

和编号的属性组,外码是职工号、编号;

试用关系代数完成下列查询:

⑨ 定义职工表、社会团体表和参加表,并说明其主码和参照关系。 Create table 职工(职工号 char(5)primary key,

姓名 char(8)NOT NULL, 年龄 samllint, 性别 char(2)

Constraint C1 check(性别 in (‘男’,‘女’)));

Create table 社会团体(编号 char(5)primary key,

名称 char(20)NOT NULL,

负责人char(5), 活动地点 char(20)

Constraint C2 FOREIGN KEY(负责人)REFERENCES 职工(职工号));

Create table 参加(职工号 char(5),

编号char(5),

参加日期char(10),

Constraint C3 PRIMARY KEY(职工号,编号)

Constraint C4 FOREIGN KEY(职工号)REFERENCES 职工(职工号) Constraint C5 FOREIGN KEY(编号)REFERENCES 社会团体(编号));

⑩ 新建视图WD1,内容为年龄在25到40岁之间的职工号和姓名;

Create view WD1(职工号,姓名)

As select 职工号,姓名 from 职工 where 年龄 between 25 and 40; ? 为职工表按职工号降序建立索引,索引名为职工_职工号;

Create index 职工_职工号 on 职工(职工号 DESC); ? 查找参加歌唱队或篮球队的职工号和姓名;

Select 职工.职工号,姓名 from 职工,参加,社会团体

where 职工.职工号=参加.职工号 and 社会团体.编号=参加.编号 and名称 in (‘篮球队’,‘歌唱对’);

? 求每个社会团体的参加人数和社会团体的名称;

Select 名称, count(*)as参加人数 from 参加,社会团体

where社会团体.编号=参加.编号 group by 社会团体.编号,名称

? 求参加人数超过100人的社会团体的名称和负责人;

Select 名称, 负责人 from 参加,社会团体

where社会团体.编号=参加.编号

group by 社会团体.编号,名称,负责人 having count(*)>100; ? 求参加人数最多的社会团体的名称和参加人数;

Select 名称,count(*)as参加人数 from 参加,社会团体

where社会团体.编号=参加.编号

group by 社会团体.编号,名称 having count(*)>=all(Select count(*)from 参加 group by 编号 )

? 查找没有参加篮球队的职工编号和姓名;

Select 职工编号,姓名 from 职工

where职工编号 not in (select 职工编号 from 参加,社会团体 where社会团体.编号=参加.编号 and 名称=‘篮球队’); ? 查找参加了全部社会团体的职工情况;

Select * from 职工 where not exists(select * from 社会团体 where not exists(select * from 参加 where 职工.职工号=职工号 and 社会团体.编号=编号) ) ? 查找参加了职工号为‘1001’的职工所参加的全部社会团体的职工号;

Select 职工号 from 职工 where not exists(select * from 参加 A where A.职工号=‘1001’and not exists(select * from 参加 B where 职工.职工号=B.职工号 and A.编号=B.编号) )

? 把歌唱队的活动地点改成‘工人文化宫’;

Update 社会团体

Set 活动地址=‘工人文化宫‘

Where 名称=‘歌唱队‘

? 删除编号为‘1002’的职工的所有信息;

Delete * From 参加

Where 职工号=‘1002‘; Delete * From 职工

Where 职工号=‘1002‘;

备注:为了书写方便,语法题中的标点符号,半角全角没有加以区分,实际在查询分析器中运行时需要改成半角标点符号。 15. 名词解释

(1) 函数依赖:对于每一个确定的X,Y的值就被唯一地确定,则说X函数确定Y,或者说Y函数

依赖于X。

(2) 1NF:如果关系模式R,其所有属性都是不可再分的基本数据项,则称R属于第一范式,R∈1NF (3) 2NF:如关系模式R∈1NF,且每个非主属性完全函数依赖于候选码,则称R属于第二范式,

R∈2NF。

(4) 3NF:如果关系模式R∈2NF,且R的任一非主属性都不传递函数依赖于任何候选码,则称R

属于第三范式,R∈3NF。

(5) BCNF:设关系模式R(U)∈1NF,若X → Y,且Y

即若每一个决定因素都包含码,则R∈BCNF。

16. 填空题

(1) 关系数据库的规范化理论是数据库___数据模型___设计的一个有力工具。 (2) X→Y,则X称为____决定_______因素,Y称为__依赖______因素。 (3) __3NF___是一个可用的关系模式应满足的最低范式。 17. 单选题

(1) (学号,姓名)?姓名,这是( B )。

A、完全函数依赖 B、平凡函数依赖 C、非平凡函数依赖 D、传递函数依赖 (2) (读者号,书号)?读者姓名( B )。

A、完全函数依赖 B、部分函数依赖 C、平凡函数依赖 D、传递函数依赖

(3) 现有关系:比赛(比赛日期,球队编号,球队名称,队长,比赛成绩)。假定一只球队一天只参

加一场比赛,则候选码是( C )。

A、球队编号 B、球队编号,球队名称 C、比赛日期,球队编号 D、球队编号,比赛成绩

18. 判断题

(1) 3NF是函数依赖范围内能够达到的最彻底的分解。(F) (2) 函数依赖关系是属性间的一种一对一的关系。(F)

(3) 如果R只有一个侯选码,且R ∈3NF,则R必属于BCNF。(T) (4) 对于关系R,如果候选码是单个属性,则R∈2NF。(T)

X,则X必包含候选码,那么R∈BCNF。

第七章 习 题(答案)

19. 简答题

(1) 评价关系模式的标准是什么?

答:尽可能少的数据冗余;没有插入异常;没有删除异常;没有更新(修改)异常。

20. 综合题

(1) 现有关系模式: 库存(零件号、零件名称、仓库号、仓库名称、仓库管理员,库存量)

规定:一种零件可以存放在多个仓库,一个仓库可以存放多种零件

①请列出基本函数依赖和候选码;

②是否存在删除异常、插入异常和更新异常,若存在,请举例说明; ③属于第几范式?说明理由。 ④分解为3NF并说明理由。

⑤分解到3NF是否已经属于BCNF,说明理由。

答:①基本函数依赖:零件号→零件名称,仓库号→仓库名称,仓库号→仓库管理员, (零件号,仓库号)→库存量; 候选码:(零件号,仓库号)

②存在删除异常、插入异常和更新异常。

当删除零件记录时,有可能会一同删除仓库的信息,使仓库信息丢失,发生删除异常; 当仓库中没有存储零件时,无法插入仓库信息,同时如果零件还未明确存储地点,也无法插入零

件信息,发生插入异常;

当更新仓库信息,比如修改仓库管理员时,由于存在多条仓库记录,需要修改多处,容易发生错

改或漏改,发生更新异常;

③由于(零件号,仓库号)

1NF;

④将原关系分解成 R1(零件号,零件名称);

R2(仓库号,仓库名称,仓库管理员);

R3(零件号,仓库号,库存量) 对于R1,候选码是零件号。零件号

所以R1 ∈3NF。

对于R2,候选码是仓库号。仓库号

的传递函数依赖,所以R2 ∈3NF。

对于R3,候选码是(零件号,仓库号)。(零件号,仓库号)

候选码的传递函数依赖,所以R3 ∈3NF。

⑤属于BCNF,R1,R2,R3所有的函数依赖的决定因素都包含了候选码。

第八章 习 题(答案)

21. 填空题

(1) SQL Server 有两种安全认证模式,即___WINDOWS_______________安全认证模式和______混

合______安全认证模式。

(2) SQL SERVER安装好以后,只有2个已经创建的用户:___SA_______和BULTIN/administrators,

它们都是超级用户,对数据库拥有一切权限。

(3) 数据库的完整性是指数据的___正确性___和___相容性____。 (4) 按数据库状态,数据转储分为 动态转储 和 静态转储 。 (5) 按数据转储方式,数据转储分为 海量转储和 增量转储 。 22. 单选题

库存量,且不存在非主属性对

(仓库名称,仓库管理员),且不存在非主属性对候选码零件名称,且不存在非主属性对候选码的传递函数依赖,

零件名称,存在非主属性对候选码的部分函数依赖,所以属于