数据库考研必备复试题 下载本文

试卷一

一、选择题(每题1分,共20分)

1.在数据管理技术的发展过程中,数据独立性最高的是( )阶段。 A. 数据库系统 A. 网络系统 A. 外模式

B. 文件系统 B. 数据库系统 B. 内模式

C. 人工管理

D. 数据项管理

D. 数据库

2. ( )是存储在计算机内的有结构的数据集合。

C. 操作系统

3. 在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是( )。

C. 存储模式

D. 模式

4. 作为关系数据系统,最小应具备的关系运算是( )。 A. 排序、索引、统计 C. 关联、更新、排序 A. where A. *

B. from B. ?

B. 选择、投影、连接 D. 显示、打印、制表 C. select C. %

D. having D. _ D. 4NF

C. 充分条件

D. 既不充分也不必要条件

D. 物理设计阶段

5. 在select语句中使用group by Sno时,Sno 必须出现在( )子句中。 6. 在where语句的条件表达式中,与零个或多个字符匹配的通配符是( )。 7. 对关系模式进行分解时,要求保持函数依赖,最高可以达到( )。 A. 2NF

B. 3NF

C. BCNF

8. 在关系模式R(U,F)中,Y∈XF+是X→Y是否成立的( )。 A. 充分必要条件 A. 需求分析阶段 A. 外模式 A. 数据项

B. 必要条件

9. 在关系数据库设计阶段中,完成关系模式设计的阶段是( )。

B. 概念设计阶段

C. 逻辑设计阶段

D. 概念模式 D. 数据存储 D. 链表方法 D. 持久性 D. 一致性 D. 审计

10. 基本E-R图就是数据库的( )。

B. 逻辑模式 B. 数据流

C. 内模式

11. 从数据流图构造E-R图时,选择实体一般应先考虑数据流图中的( )。

C. 数据处理 C. HASH方法 C. 隔离性 C. 可靠性 C. 约束

12. 以下( )不是当前常用的存取方法。 A. 索引方法 A. 原子性 A. 安全性 A. 授权

B. 聚簇方法 B. 一致性 B. 完整性 B. 定义

13. 事务一旦提交,对数据库的改变是永久的,这是事务的( )。 14. 并发控制要解决的根本问题是保持数据库状态的( )。 15. 在数据库系统中,对存取权限的定义称为( )。 16. 视图建立后,在数据字典中存放的是( )。 A. 查询语句 A. 4NF

B. 视图的定义 B. 2NF

C. 组成视图的表内容 D. 产生视图的表定义 C. 3NF

D. BCNF

17. 由全码组成的关系模式,最高可以达到的模式为( )。 18. 下列叙述中,正确的是( )。

1

A. 对于关系数据模型,规范化程度越高越好 B. 如果F是最小函数依赖集,则R∈2NF C. 如果R∈BCNF,则F是最小函数依赖集

D. 关系模式分解为BCNF后,函数依赖关系可能被破坏

19. 为保证多用户环境中数据的完整性和一致性,DBMS采取的控制称为( )。 A. 安全性控制

B. 完整性控制

C. 事务控制

D. 并发控制

D. 程序执行结果

20. 包含在日志文件中的主要内容是( )。

A. 程序运行过程 B. 对数据的全部操作 C. 对数据的全部更新操作 二、填空题(每题1分,共10分)

1. 关系模式R与S,组成关系R÷S的是关系( )的属性集。 2. 在SQL中视图是由( )产生的虚表。

3. 在SQL中X not between 20 and 30 的含义是( )。

4. 在合并E-R图时需解决的属性冲突包括属性( )冲突和属性取值单位冲突。 5. 事务遵守( )是可串行化调度的充分条件。 6. 要使数据库具有可恢复性,基本原则就是数据( )。

7. 数据库控制保护的主要内容是数据的安全性、( )、并发控制和恢复。 8. 事务对数据库数据进行更新操作时,必须首先获得对该数据集合的( )锁。 9. ( )是指造成系统停止运转的任何事件,使得系统要重新启动。 10. 数据( )是防止数据库中数据在存储和传输中失密的有效手段。 三、简单应用题(每题3分,共15分) R表 S表 A a1 a2 a3 a1 T表 B b2 b2 b6 b1 b4

C c1 c3 c6 B b1 b3 b4 b2 C c2 c7 c6 c3 A a1 a2 a4 a1 a3 B b1 b2 b2 C c2 c1 c3 D d4 d1 d2 c2 c6 4. R×T

5.

∏A,DσS.B=T.B(S×T)

求解以下关系代数表达式结果: 1. R∩S

2. R-S

3. (R∪S)÷T

四、应用题(每题5分,共25分)

给定学生选课数据库,其中包含有3张基本表:学生表S(Sno,Sname,Sage,Ssex,Sdept),课程表C(Cno,Cname,Teacher,Ccredit),选课表SC(Sno,Cno,Grade)。按要求完成下列数据操作要求。

1. 用SQL语句创建选课表SC(Sno,Cno,Grade),其中主码为(Sno,Cno),外码为Sno,Cno,并规定成绩Grade的取值应该在0到100之间。 2. 用SQL语句表示“将计算机科学系全体学生的成绩置零”。

3. 用SQL语句表示“查询选修并且成绩及格的课程总数大于3门(包括3门)的学生的学号和姓名”。

4. 用SQL语句创建视图VSC(Sno,Sname,Cno,Cname,Grade),并将对学生表S的修

2

改权限授权给用户U1,并且U1可以将权限进行传播。

5. 用关系代数表达式表示“查询选修了全部课程的学生学号和姓名”。 五、(15分)已知关系模式R(U,F)中 U={ABCDEG},

F={BE→G,BD→G,CD→A,CE→G,CDE→AB,BC→A,B→D},求下列各题。 1. (3分)F的最小函数依赖集; 2. (3分)关系模式R的候选码;

3. (3分)判断R的最高规范化程度,并说明理由;

4. (3分)判定分解ρ={ABD,DGE,AG,CE}是否保持无损连接性; 5. (3分)将关系模式R分解为3NF,并且保持函数依赖和无损连接性。

六、(15分)设某汽车运输公司有三个实体集。一是“车队”实体集,属性有车队号和车队名等;二是“车辆”实体集,属性有牌照号、厂家和出厂日期等;三是“司机”实体集,属性有司机编号、姓名和电话等 。

设车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有个聘期;车队与车辆之间存在“拥有”联系,每个车队可拥有若干个车辆,但每辆车只能属于一个车队;司机与车辆之间存在“使用”联系,司机使用车辆有使用日期和公里数两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。 1. (6分)试画出E-R图,并在图上注明属性、联系类型及实体标识符; 2. (6分)将E-R图转换为关系模型,并说明主键和外键。 3. (3分)判定每个关系模式的最高规范化程度。

《数据库》A卷参考答案及评分标准

一、选择题(每题1分,共20分) 1-5 ADDBC 6-10 CBACD 11-15 DDDDA 16-20 DDDDC 二、填空题(每题1分,共10分) 1. 关系R 2. 基本表或视图 3. X<20 或 X>30 4. 域 5. 两段锁协议 6. 冗余 7. 完整性 8. 排它(写) 9. 系统故障 10. 加密 三、简单应用题(每题3分,共15分) 1. R∩S A a1 a3 2. R-S C c2 c6 3. (R∪S)÷T B b3 b2 C c7 B b1 b4 A a2 a1 A a1 c3 3

4. R×T R.A a1 a2 a3 a1 a1 a2 a3 a1 a1 a2 a3 a1 5. ∏A,DσS.B=T.B(S×T) R.B b1 b3 b4 b2 b1 b3 b4 b2 b1 b3 b4 b2 R.C c2 c7 c6 c3 c2 c7 c6 c3 c2 c7 c6 c3 T.B b1 b1 b1 b1 b2 b2 b2 b2 b2 b2 b2 b2 T.C c2 c2 c2 c2 c1 c1 c1 c1 c3 c3 c3 c3 T.D d4 d4 d4 d4 d1 A a1 a1 a2 a2 a1 D d1 d2 d1 d2 d4 d1 d1 d1 d2 d2 d2 d2 四、应用题(每题5分,共25分) 1. (5分) create table SC( Sno char(10) not null, Cno char(10) not null, Grade int check (Grade >= 0 and Grade =< 100), primary key (Sno,Cno), foreign key (Sno) references S(Sno), foreign key (Cno) references C(Cno) );

2. (5分) update SC set Grade = 0 where ‘CS’ = (select Sdept from S where S.Sno = SC.Sno); 3. (5分)

select Sno,Sname from S

where Sno in ( select Sno from SC where Grade >= 60 group by Sno having (count(*) >=3 )); 4. (5分)

create view VSC(Sno, Sname, Cno, Cname, Grade) as

4

select S.Sno, Sname, C.Cno, Cname, Grade from S, C, SC

where S.Sno = SC.Sno and C.Cno = SC.Cno;

grant update on table S to U1

with grant option; 5. (5分)

∏Sno,Cno(SC) ÷∏Cno(C) ∏Sno,Sname(S) 四、应用题(15分) 1.(3分)

Fmin = {B→G,CD→A,CE→G,B→D,CDE→B} 2.(3分) 候选码为:(BCE)和(CDE) 3.(3分)

1NF,存在BE→G,说明G对码部分函数依赖,所以为1NF。 4.(3分) ABG DGE BCD CEA A a a a B a a C a a D a a a E a a G a a a 该分解为有损连接分解。 5.(3分)

ρ={BDG,ACD,CEG,BCDE} 六、应用题(15分) 1.(6分)

车队号 车 队 1 拥有 牌照号 厂家 出厂日期 m 车 辆 n 使用 m 车队名 1 聘用 n 司 机 司机编号 姓名 电话 使用日期 公里数

2.(6分)

车队(车队号,车队名)

司机(司机编号,姓名,电话,车队号,聘期)

5

聘期 车辆(牌照号,厂家,出厂日期,车队号) 使用(牌照号,司机编号,使用日期,公里数) 3.(3分) 均为BCNF。

本科生考试试卷

一、选择题(每题1分,共20分) 1. 数据库系统的核心是( )。 A. 数据库

B. 数据库管理系统

C. 数据模型

D. 软件工具

2. 应用数据库的主要目的是为了( )。 A. 解决保密问题 B. 解决数据完整性问题 3. 子模式是( )。 A. 模式的副本 A. 投影

B. 模式的逻辑子集

C. 笛卡尔积 B. 删除异常

C. 多个模式的集合 D. 除 C. 候选码冗余

D. 数据冗余过大 D. 以上三者都对

4. 关系运算中花费时间可能最长的运算是( )。

B. 选择

5. 关系模式R(U,F),如果R∈2NF,基本可以消除的数据异常是( )。 A. 插入异常

6. 在关系模式R(U,F)中,X、Y、Z都是属性,且X→Y、Y→Z,则X→Z是( )。 A. 一定是传递函数依赖 B. 一定不是传递函数依赖 C. 不一定是传递函数依赖 7. 在关系数据库设计阶段中,完成E-R图设计的阶段是( )。 A. 需求分析阶段

B. 概念设计阶段 C. 逻辑设计阶段 B. 分类、概括、聚集 D. 超类、子类、消息

B. 概念设计阶段 C. 逻辑设计阶段

C. 隔离性

D. 物理设计阶段 D. 物理设计阶段

8. 数据抽象的内容是( )。 A. 选择、投影、连接 C. 调查、分析、设计 A. 需求分析阶段 A. 原子性

C. 共享数据问题 D. 解决数据量大的问题

9. 在整个设计过程中,最困难、最耗时的阶段是( )。 10. 事务要么都做,要么都不做,是事务的( )。

B. 一致性

D. 持久性

11. 从E-R图向关系模型转换,一个M:N的联系转换成一个关系模式时,该关系模式的关键字是( )。 A. N方实体的关键字

B. M方实体的关键字

C. N方实体关键字与M方关键字组合 D. 重新选择其他属性

12. 现有两个关系R(A,B,C)、S(A,C,D,E) ,下列哪个表达式能够合法执行( )。 A. R∩S B. бA. 属性冲突 A. 2NF

B=”b”(R)

C. ПA,C(R)∩ПA,D(S) D. R∪S C. 语法冲突 C. BCNF

6

13. 将局部E-R图合并为全局E-R图时可能会出现冲突,不属于合并冲突的是( )。

B. 结构冲突 B. 3NF

D.命名冲突 D. 4NF

14. 关系模式R中的属性全部是主属性,则R的最低范式必定是( )。

15. 下列SQL语句中,修改表结构的是( )。 A. ALTER A. 列

B. CREATE B. 行

C. UPDATE C. 关系

D. INSERT D. 分组

16. SQL的SELECT语句中,“HAVING条件表达式”用来筛选满足条件的( )。 17. 对于属性子集X、Y,X’是X的真子集,若X→Y,X’→Y,则称( )。 A. Y传递函数依赖于X C. Y完全函数依赖于X 18. 系统故障会造成( )。 A. 内存数据丢失 ( )。 A. 查询语言 A. 完整性

B. 宿主语言

C. 自含语言 C. 隔离性

D. 会话语言 D. 安全性

20. SQL中的视图提高了数据库系统的( )。

B. 并发控制

二、填空题(每题1分,共10分)

1. 在关系模式中,能够唯一表达元组的属性组称为( )。 2. 参照完整性规则是对( )键的约束。

3. 判断一个并发调度是否正确,可以用( )概念来解决。 4. 模式/内模式映像为数据库提供了( )数据独立性。

5. 数据库系统中可能发生的故障有:系统故障、( )和计算机病毒。 6. 外模式是( )的子集。

7. 制作数据后援副本的过程称为( )。 8. 并发控制是对用户的( )加以控制和协调。 9. 在数据库系统中对存取权限的定义称为( )。

10. ( )数据模型一般在数据库设计的概念设计阶段使用。 三、简单应用题(每题3分,共15分) R表 S表 A a1 a2 a1 B. Y部分函数依赖于X D. X、Y相互函数依赖

C. 软盘数据丢失

D. 磁带数据丢失

B. 硬盘数据丢失

19. 为了使用数据库方便,常把数据操作语言嵌入到某一高级语言中,此高级语言称为

T表 B b2 b2 b1 b4

C c2 c3 B b1 b2 b2 C c2 c3 c3 A a1 a2 a1 a3 B b1 b2 C c2 c3 D d4 d2 c2 c6 4. ∏A(S)

5. ∏A,DσS.C=T.C(S×T)

求解以下关系代数表达式结果: 1. R∪S

2. R-S

3. (R∪S)÷T

四、应用题(每题5分,共25分)

给定学生选课数据库,其中包含有3张基本表:学生表S(Sno,Sname,Sage,Ssex,Sdept),课程表C(Cno,Cname,Teacher,Ccredit),选课表SC(Sno,Cno,Grade)。按要求完成下列数据操作要求。

1. 用关系代数表达式表示“查询成绩在90分以上的学生的学生姓名”。

7

2. 用SQL语句表示“用户U1具有从每门课程中SELECT 最高成绩、最低成绩、平均成绩的权力,他不能查看每个人的成绩”。

3. 用SQL语句表示“将(S0009,C003,78)插入SC关系表中”。 4. 用SQL语句表示“查询选修王平老师讲授课程的学生姓名”。 5. 用SQL语句表示“将IS系的学生选课信息删除”。

五、(15分)设R(A,B,C,D,E),F={A->C,C->D,B->C,DE->C,CE->A} 求: 1. (5分)R的候选码;

2. (5分)ρ={AD,AB,BC,CDE,AE}是否无损连接; 3. (5分)将R分解BCNF且无损。

六、(15分)请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:读者号,姓名,地址,性别,年龄,单位。对每本书存有:书号,书名,作者,出版社。对每本被借出的书存有读者号、借出日期和应还日期。要求: 1. (6分)给出 E-R 图;

2. (6分)再将其转换为关系模型;

3. (3分)判断每个关系模式的规范化最高程度。

《数据库》B卷参考答案及评分标准

一、选择题(每题1分,共20分) 1-5 BCBCA 6-10 CBBAA 11-15 CBCBA 16-20 DBABD 二、填空题(每题1分,共10分) 1、超码 2、外码 3、可串行化调度 4、物理 5、介质故障 6、模式 7、转储 8、并发操作 9、授权 10、E-R 三、简单应用题(每题3分,共15分) 1. R∪S A a1 a2 a1 a1 a3 2. R-S C c2 3. (R∪S)÷T B b2 C c3 B b1 b2 b2 b2 b4 A a1 A a1 c3 c3 c2 c6 5. ∏A,DσS.C=T.C(S×T) A a1 a2 4. ∏A(S) A a1 a2 a3 D d4 d2 四、简单应用题(每题5分,共25分) 1、(5分) ∏S.Snameσ

S.Sno = SC.Sno∧SC.Grade ≥90(S×SC)

2、(5分)

CREATE VIEW 课程成绩 AS

8

SELECT Cno, MAX(Grade),MIN(Grade),AVG(Grade) FROM SC GROUP BY Cno;

GRANT SELECT ON课程成绩 TO U1; 3、(5分)

INSERT INTO SC VALUES(‘S0009’,‘C003’,78); 4、(5分) SELECT Sname FROM S,C,SC

WHERE S.Sno = SC.Sno and C.Cno = SC.Cno and C.Teacher = ‘王平’; 5、(5分) DELETE FROM SC

WHERE ‘CS’ = (SELECT Sdept FROM S WHERE S.Sno = SC.Sno); 五、应用题(15分) 1、(5分)

候选码为(BE) 2、(5分) AD AB BC CDE AE A a a a a B a a C a a a a a D a a a a a E a a 无全a行,所以该分解为有损连接。 3、(5分)

ρ={AC,BD,ABE} 六、应用题(15分) 1、(6分)

123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231 123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231 123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231

9

123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231 123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231 123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231 123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231 123123123123123123123123123123123123123123123123131231231123123123123123123123123123131231231231231231231231231231231231

2、(6分)

读者(读者号,姓名,地址,性别,年龄,单位)

书(书号,书名,作者,出版社,读者号,借出日期,应还日期) 3、(3分) 均为BCNF

哈尔滨工程大学试卷

一、问答题(30分,每小题5分)

1.说明什么是数据(Data)和数据库(Database)?

2.说明什么是数据库管理系统(DBMS)和数据库系统(DBS)? 3.简述数据管理技术的发展过程?

4.什么是事务(Transaction), 事务和程序的区别? 5.什么是计算机系统安全性?

6.TCSEC/TDI安全级别划分有几个等级,各是什么? 二、(10分)

画出包括学生、宿舍、档案材料、班级、班主任的ER图,指出实体之间的联系和描述实体的属性,并指出实体的码?

三、(20分)

设有学生课程数据库中包含三个关系:学生关系S、课程关系C、学生选课关系SC,如图所示。 Sno 3001 3002 4003 4004 1041 1042 Cno 1 2 3 4 5

Sname 王平 张勇 黎明 刘明远 赵国庆 樊建玺 Sex 女 男 女 男 男 男 SD 计算机 计算机 机 械 机 械 通 信 通 信 Age 18 19 18 17 17 17 Sno Cno 1 2 3 2 3 1 2 Grade 93 84 84 83 93 84 82 Cname 数据库 数 学 操作系统 数据结构 数字通信 Pcno 3 4 7 6 Credit 3 4 4 3 3 10

3001 3001 3001 3002 3002 1042 1042

6 7 信息系统 程序设计 1 2 4 2 (1)

(1)用关系代数检索选修课程名为“数学”的学生号和学生姓名(10分)

(2)用SQL命令查询其它系比计算机系所有学生年龄都要小的学生姓名及年龄。(10分)

四、(20分)

设有一关系R,具有下列属性:学号(S#)、课程号(C#)、成绩(G)、TN(任课教师姓名)、教师所在系(D)。数据具有如下语义:

C SC ? 一个学生一个学号,一门课程一个课程号 ? 一位学生所修的每门课程都有一个成绩

? 每门课程只有一位任课教师,一教师可教多门课 ? 教师中没有重名,每位教师只属于一个系

(1) 指出关系R中的函数依赖关系?(5分) (2) 指出关系R的缺点? (5分)

(3) 指出关系R的缺点的解决途径和规范化程度?(10分) 五、(20分,每小题5分)

学生数据库中有三个基本表(关系): S(Sno,Sname,Age,Sex,SD) C(Cno,Cname,Teacher)

SC(Sno,Cno.Grade)

请用SQL语言完成以下操作:

(1)检索选修了‘操作系统’或‘数据库’课程的学号和成绩; (2)检索选修了“刘平”老师所讲课程的学生的学号、姓名及成绩; (3)检索所有姓“张”的学生姓名、年龄和所在系; (4)检索三门课以上学生姓名、年龄和所在系。

哈尔滨工程大学试卷

二、问答题(30分,每小题5分)

1.说明什么是数据(Data)和数据库(Database)?

答:数据(Data)是数据库中存储的基本对象,数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合

2.说明什么是数据库管理系统(DBMS)和数据库系统(DBS)?

答:数据库管理系统(Database Management System,简称DBMS)是科学地组织和存储数据、高效地获取和维护数据。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。 3.简述数据管理技术的发展过程? 答:1.人工管理阶段(40年代中--50年代中) 2.文件系统阶段(50年代末--60年代中) 3.数据库系统阶段(60年代末--现在)

4.什么是事务(Transaction), 事务和程序的区别?

答:事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。事务和程序是两个概念:在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序;一个应用程序通常包含多个事务

5.什么是计算机系统安全性?

11

答:为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。

6.TCSEC/TDI安全级别划分有几个等级,各是什么? 答:四组(division)七个等级, D, C(C1,C2), B(B1,B2,B3), A(A1)二、(10分)

画出包括学生、宿舍、档案材料、班级、班主任的ER图,指出实体之间的联系和描述实体的属性,并指出实体的码?

答:其中有下划线的属性为实体的码。(5分)

学生:{学号,姓名,出生日期,} 档案材料:{档案号,......} 班级:{班级号,学生人数} 班主任:{职工号,姓名,性别,是否为优秀班主任} 宿舍:{宿舍编号,地址,人数} 教室:{教室编号,地址,容量}

(5分)

班主任 1 指导 组成 1 管理 n 班级 1 n 上课 1 教室 n 宿舍 1 住宿 n 学生 1 归档 n 1 归档材料 三、(20分)

设有学生课程数据库中包含三个关系:学生关系S、课程关系C、学生选课关系SC,如图所示。

Sno 3001 3002 4003 4004 1041 1042 Cno 1 2

Sname 王平 张勇 黎明 刘明远 赵国庆 樊建玺 Sex 女 男 女 男 男 男 S

SD 计算机 计算机 机 械 机 械 通 信 通 信 Age 18 19 18 17 17 17 Cname 数据库 数 学 Pcno 3 Credit 3 4 12

Sno 3001 3001 3001 3002 3002 1042 1042 Cno 1 2 3 2 3 1 2 Grade 93 84 84 83 93 84 82 3 4 5 6 7

操作系统 数据结构 数字通信 信息系统 程序设计 4 7 6 1 2 4 3 3 4 2

(2) 用关系代数检索选修课程名为“数学”的学生号和学生姓名(10分)

答:检索选修课程名为“数学”的学生号和学生姓名: ①关系代数表达式为:

?Sno,Sname(?Cname=’数学’(S SC C))

(2) 用SQL命令查询其它系比计算机系所有学生年龄都要小的学生姓名及年龄。(10分)

答:

SELECT Sname,Age FROM S

WHERE Age

WHERE SD=’CS’)

AND SD<> ‘CS’

或者:

SELECT Sname,Age FROM S WHERE Age<

(SELECT MIN(Age) FROM S

WHERE SD=‘CS’ ) AND SD<>‘CS’

四、(20分)

设有一关系R,具有下列属性:学号(S#)、课程号(C#)、成绩(G)、TN(任课教师姓名)、教师所在系(D)。数据具有如下语义:

? 一个学生一个学号,一门课程一个课程号 ? 一位学生所修的每门课程都有一个成绩

? 每门课程只有一位任课教师,一教师可教多门课 ? 教师中没有重名,每位教师只属于一个系

(4) 指出关系R中的函数依赖关系? (5) 指出关系R的缺点?

(6) 指出关系R的缺点的解决途径和规范化程度? 答:

(1) 具有的函数依赖:(5分)

13

F={(S#, C#) →G, C# →TN, TN →D}

(2) 缺点的产生主要来自关系的结构。该关系中包含三方面数据:成绩,

开课教师和所属系。(5分)

(3) 解决途径是将关系进行分解—关系规范化。(10分) SCG(S#, C#, G) CTN(C#, TN) TND(TN, D) 五、(20分)

学生数据库中有三个基本表(关系): S(Sno,Sname,Age,Sex,SD) C(Cno,Cname,Teacher)

SC(Sno,Cno.Grade)

请用SQL语言完成以下操作:

(1)检索选修了‘操作系统’或‘数据库’课程的学号和成绩; (2)检索选修了“刘平”老师所讲课程的学生的学号、姓名及成绩; (3)检索所有姓“张”的学生姓名、年龄和所在系; (4)检索三门课以上学生姓名、年龄和所在系。 答:

(1)检索选修了‘操作系统’或‘数据库’课程的学号和成绩;(5分) SELECT Sno,Grade; FROM SC,C;

WHERE SC.Cno=C.Cno AND (C.Cname = '操作系统'OR; C.Cname = '数据库')

(2)检索选修了“刘平”老师所讲课程的学生的学号、姓名(5分) SELECT S.Sno,Sname; FROM S,SC,C;

WHERE S.Sno = SC.Sno AND SC.Cno=C.Cno AND C.Teacher='刘平' (3)检索所有姓“张”的学生姓名、年龄和所在系;(5分) SELECT Sname,Age,SD; FROM S;

WHERe Sname LIKE '张%'

(4)检索三门课以上学生姓名、年龄和所在系。(5分)

SELECT Sname,Age,SD; FROM S;

WHERE Sno IN; (SELECT Sno; FROM SC;

GROUP BY Sno; HAVING COUNT(*) >=3)

哈尔滨工程大学试卷

一、简述题(30分,每小题10分)

14

1.什么是排它锁和共事锁?

2.数据库设计的基本步骤有哪些? 3.什么是活锁与死锁?

二、设有一个供应商S、零件 P、 工程项目 J、供销情况 SPJ,请建立四个索引。其中,(20分,每小题5分)

(1)供应商S按Sno的升序; (2)零件P按Pno的升序;

(3)工程项目J按Jno的升序;

(4)供销情况SPJ按Sno的升序,按Pno的降序按Jno的升序。

三、供应商数据库中有:供应商、零件、项目、供应四个基本表(关系)。 S(Sno,Sname,Status,City) P(Pno,Pname,Color,Weight) J(Jno,Jname,City)

SPJ(Sno,Pno,Jno,Qty) (20分,每小题10分)

用户有一查询语句:检索使用上海供应商生产的红色零件的工程号。

(1)试写出该查询的关系代数表达式; (2)试写出查询优化的关系代数表达式;

四、查询其他系比计算机系某一学生年龄小的学生姓名及年龄。(10分) 五、要求建立“计算机”系学生的视图。(10分)

六、要求建立一个“供应商”表S(Sno,Sname,Status,City)分别表示:供应商代码、供应商名、供应商状态、供应商所在城市。其中供应商代码不能为空,且值是唯一的,且供应商的名是唯一的。(10分)

哈尔滨工程大学试卷

三、简述题(30分,每小题10分)

1.什么是数据(Data),数据库(Database),数据库管理系统(DBMS)和数据库系统(DBS)?

解: 数据是数据库中存储的基本对象,数据库是长期储存在计算机内、有组织的、可共享的大量数据集合(3分).数据库管理系统是科学地组织和存储数据、高效地获取和维护数据(3分)。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成(4分)。

2.什么是事务(Transaction), 事务的特征? 事务和程序的区别?(10分) 解:

事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位 (3分) 事务和程序是两个概念(4分)

在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序一个应用程序通常包含多个事务

原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持续性(Durability ) 3.什么是计算机系统完整性?完整性约束条件作用的对象? (10分)

15

解: 数据的正确性和相容性,防止不合语义的数据进入数据库(5分) 列:对属性的取值类型、范围、精度等的约束条件(5分) 元组:对元组中各个属性列间的联系的约束

关系:对若干元组间、关系集合上以及关系之间的联系的约束 二、(25分)

学生数据库中有三个基本表(关系): S(Sno,Sname,Age,Sex,SD) C(Cno,Cname,Teacher)

SC(Sno,Cno.Grade)

请用SQL语言完成以下操作:

(1)检索选修课程名为“MS”的学生号和学生姓名; (2)检索至少选修了课程号为‘C1’和‘C3’的学生号;

(3)检索选修了‘操作系统’或‘数据库’课程的学号和成绩;

(4)检索年龄在18到20之间(含18和20)的女生的学号、姓名及年龄; (5)检索选修了“刘平”老师所讲课程的学生的学号、姓名及成绩; 解 (1)检索选修课程名为“MS”的学生号和学生姓名;(5分)

SELECT S.Sno,Sname; FROM S,SC,C;

WHERE S.Sno = SC.Sno AND SC.Cno=C.Cno AND C.Cname=’MS’ (2)检索至少选修了课程号为‘Cl’和‘C3’的学生号;(5分)

SELECT SNO,CNO ; FROM SC;

WHERE CNO=\

(3)检索选修了‘操作系统’或‘数据库’课程的学号和成绩;(5分) SELECT Sno,Grade; FROM SC,C;

WHERE SC.Cno=C.Cno AND (C.Cname = '操作系统'OR; C.Cname = '数据库') (4)检索年龄在18到20之间(含18和20)的女生的学号、姓名及年龄(范围查询) (5分) SELECT Sno, Sname, Age; FROM S;

WHERE Age>=18 AND Age<=20 AND Sex='女'

(5)检索选修了“刘平”老师所讲课程的学生的学号、姓名(5分) SELECT S.Sno,Sname; FROM S,SC,C;

WHERE S.Sno = SC.Sno AND SC.Cno=C.Cno AND C.Teacher='刘平'

三、(20分)

设有关系R,S如图所示。 请求出:RUS,R?S,R×S,?A,C(R),?A>B(R)。 R S A a b c d

B b a d f C c d e g A b d f

16

B a f h C d g k 解:

A a b c d f

RUS(4分) B b a d f h C c d e g k A b c B a d C d e R?(S4分)

?A,C(R) (4分)

A a b c d a a a b b b c c c d d d C c d e g A b ?A>B(R) (4分)

B a C d R ╳ S (4分) R.A R.B b b b a a a d d d f f f R.C c c c d d d e e e g g g S.A b d f b d f b d f b d f S.B a f h a f h a f h a f h S.C d g k d g k d g k d g k 四、(25分) 某学校的教学管理的E—R模型有五个实体:系、教师、学生、项目、课程,画出其E—R图,并将E—R图转换为关系模型。 解(10分)

17

1 XHXM 系 nn 选修 m 1 任课 n 课 程 C J XZR XH XM 学 生 NL

JSH JSM ZC 领导 m 教 师 n 参加 kch 排名 kcm xf m 项 目 名 称 负责人

项目号

根据E—R图向关系模型转换的原则,将五个实体转换为关系模式如下,其中码用下

划线表示:(5分)

系(系号,系名,主任名) 教师(教师号,教师名,职称) 学生(学号,姓名,年龄,性别) 项目(项目号,名称,负责人) 课程(课程号,课程名,学分)

各实体之间的联系有:教师担任课程的1:n“任课”联系;(5分) 教师参加项目的n:m“参加”联系; 学生选修课程的n:m“选修”联系;

教师、学生与系之间的所属关系的1:n:m“领导”联系。 其中“参:知”联系有一个排名属性,“选修”联系有一个成绩属性。根据ER图向关

18

系模型转换的原则,将相关的联系转换为关系模式如下: (5分)

任课(课程号,教师号)

参加(教师号,项目号,排名) 选修(学号,课程号,成绩) 领导(教师号,学号,系号)

哈尔滨工程大学本科生考试试卷

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.

数据库的概念模型独立于(B)。

A E-R图 B 具体的DBMS和机器 C 信息世界 D 现实世界 在数据库中,数据的物理独立性指的是(D)。 A 用户程序与DBMS的相互独立

B 数据库与数据库管理系统的相互独立

C 应用程序与数据库中数据的逻辑结构相互独立 D 应用程序与存储在磁盘上数据库中的数据相互独立 数据库(DB)、数据库系统(DBS)和数据库管理系统之间的关系是(B)。 A DBMS包括DB和DBS B DBS包括DB和DBMS C DB包括DBS和DBMS D DBS就是DB,也是DBMS 数据库中产生数据不一致的根本原应是(C)。

A 数据的安全 B 数据的存储量太大 C 数据冗余D 未进行完整性控制 自然连接是构成新关系的有效方法。一般情况下,当关系R和S进行连接操作的时候,要求R和S含有一个或多个共有的(C)。 A 元组 B 行 C 属性 D 记录 关系运算中花费时间最长的运算是(A),应尽量避免使用该种运算。 A 笛卡尔积 B 选择 C 投影 D 除 SQL语言属于(C)。 A 关系代数语言 B 元组关系演算语言 C 具有关系代数和关系演算双重特点的语言 D 域关系演算语言 实体完整性要求主属性不能为空值,这点可以通过(A)保证。 A 定义主码 B 定义外码 C 用户定义完整性 D 系统自动控制 SQL语言具有(C)功能。

A 关系规范、数据操纵、数据控制 B 关系规范、数据定义、数据控制 C 数据定义、数据操纵、数据控制 D 数据定义、关系规范、数据操纵 SQL语言是一种高度(B)的语言。 A 过程化 B 非过程化 C 导航式 D 格式化 当修改基表数据时候,视图(B)。 A 需要重新建立 B 可以看到修改的结果 C 更新后可以看到修改结果 D 不允许修改带有视图的基表 关系数据库的规范化为了解决关系数据库中(C)问题。 A 保证数据的安全性和完整性 B 提高查询速度 C 插入、删除和数据冗余 D 减少数据操作的复杂性 当关系模式R(A,B)已经属于3NF,则下列说法中正确的是(B)。 A 它一定消除了插入和删除异常 B 仍然存在一定的插入和删除异常 C 属于BCNF D 以上说法均不正确

19

14. 15. 当B属性函数依赖于A属性时,属性A与属性B的联系是(B)。 A 一对多 B 多对一 C 多对多 D 以上均不是

关系模式R中的属性全部是主属性,则R的最高范式是()。 A 2NF B 3NF C BCNF D 4NF

二、填空题(共15空,每空1分,共15分)

1. 关系的候选码是指(能唯一标示元组的属性或属性集合)。

2. 对关系R,按照条件f对关系R进行选择操作的写法是( )。

3. 若关系R为1NF,且它的每一个非主属性都(不部分函数依赖于)候选码,则关系R

为2NF。

4. 在数据库设计阶段,E-R图用来描述信息结构但不涉及信息在计算机中的表示,它是数

据库设计的(概念设计)阶段。

5. 数据冗余指的是(各个数据文件中存在重复的数据)。

6. 基本的封锁类型有两种,分别是(排它)锁和(共享)锁。

7. DBMS通常提供授权命令来控制不同用户访问数据库的权限,这主要是为了实现数据

库的(安全)性。

8. 数据库设计可以分为以下六个阶段(需求分析)、(概念结构设计)、(逻辑结构设计)、

(物理结构设计)、(数据库实施)和(数据库运行和维护)。 9. 并发操作一般会引起(丢失修改)、(不能重复读)和(读脏数据)三种不一致情况。

三、判断题(共10小题,每题1分,共10分)

1. 2. 3. 4. 5. 6. 7. 8. 9. 10.

建立数据库三级模式的功能是由SQL语言的数据定义功能实现的。Y 数据库中,对于试图,即存放试图的定义又存放试图所对应的数据,N

设计性能较优的关系模式称为规范化,规范化的主要理论依据是关系规范化理论。Y 关系模型中的关系模式至少满足1NF。Y

数据库设计中,关系的规范化程度越高,数据表的设计就越合理。N 对于关系,其关系模式的分解方式不是唯一的。Y 在数据库系统中,对存取权限的定义称为授权。 Y 事务的原子性是指事务中的操作要么都作,要么都不作。 Y 数据库中的封锁机制是保证数据库安全性的主要方法。 N,并发控制 数据库系统是利用存储在外部存储介质上的冗余数据来重建被破坏的数据库,它主要有两种:数据库副本和日志文件。Y

四、简答题(共4小题,每题5分,共20分)

1. 2. 3. 4.

简述关系数据库中模型、模式和具体值之间的联系和区别。 简述自然连接和等值连接的区别。 事务中提交和回滚的含义。 怎样进行系统故障的恢复。(回答的时候应该考虑到系统故障发生时使数据不一致的原因有哪些)

五、问答题(共2小题,1题20分,2、3题各10分,共40分)

1. 基于这样的三个表:学生表S,课程表C和学生选课表SC。它们的结构如下: S(S#,SN,SEX,AGE,DEPT)

20

C(C#,CN) SC(S#,C#,GRADE) 其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号, CN为课程名,GRADE为成绩。 回答以下问题:

(1) 写出创建关系S的SQL语句。

(2) 检索选修了课程的学生学号、姓名、课程名和成绩,写出SQL语句。 (3) 检索所有比“张鹏”年龄大的学生学号、姓名和性别,写出SQL语句。

(4) 检索选修了课程号为“C1”的学生中成绩最高的学生的学号、姓名和成绩,写

出SQL语句。

2. 某学校实行学分制,学生可以根据自己的情况选修课程。每名学生可以同时选修多门课

程,每门课程可以由多位教师讲授,每位教师可以讲授多门课程。 (1) 指出学生、课程和教师的联系类型,画出E-R图。(属性自行确定) (2) 将(1)中所画E-R图转换为关系模式。 3. 设有关系R和S如下图所示。 关系R A 1 2 3

关系S A 2 4

B 1 1 C 5 4 B 2 1 2 C 3 5 4 计算: (1)R1=R-S (2)R2=R∪S (3)R2=R∩S (4)R2=R×S

数据库试卷B答案

一、简答题(30分,每小题10分)

1.什么是排它锁和共事锁?

答:排它锁 若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它事务都不能

再对A加任何类型的锁,直到T释放A上的锁。

共事锁 若事务T对数据对象A加上S锁,则只允许T读取A,但不能修改A,其它事务只

能再对A加S锁,直到T释放A上的S锁。这就保证了其它事务可以读A,但在T释放A上的S锁之前不能对A进行任何修改。

2.数据库设计的基本步骤有哪些?:

答:按照规范的设计方法,将数据库设计分为六个阶段: ①需求分析; ②概念结构设计; ③逻辑结构设计; ④物理结构设计;

21

⑤数据库实施;

⑥数据库的运行和维护。 3.什么是活锁与死锁?

答:活锁是指当事务T1封锁了数据R,事务T2请求封锁数据R于是T2等待,当Tl释放

了R上的封锁后,系统首先批准了T3请求,于是T2仍等待,当T3释放了R上的封锁后,又批准了T4请求,??使得T2可能永远等待。这种现象就是活锁。

死锁是指两个以上的事务分别请求封锁对方已经封锁的数据,导致长期等待而无法继

续运行下去的现象叫做死锁。

二、设有一个供应商S、零件 P、 工程项目 J、供销情况 SPJ,请建立四个索引。其中,(20分,每小题5分)

(1)供应商S按Sno的升序; (2)零件P按Pno的升序; (3)工程项目J按Jno的升序;

(4)供销情况SPJ按Sno的升序,按Pno的降序按Jno的升序。 解 CREATE UNIQUE INDEX S—SNO ON S(Sno); CREATE UNIQUE INDEX P—PNO ON P(Pno); CREATE UNIQUE INDEX J—JNO ON J (Jno);

CREATE UNIQUE INDEX SPJ一NO ON SPJ(Sno ASC,Pno DESC,JNO ASC); 三、供应商数据库中有:供应商、零件、项目、供应四个基本表(关系)。 S(Sno,Sname,Status,City) P(Pno,Pname,Color,Weight) J(Jno,Jname,City)

SPJ(Sno,Pno,Jno,Qty) (20分,每小题10分)

用户有一查询语句:检索使用上海供应商生产的红色零件的工程号。 (1)试写出该查询的关系代数表达式; (2)试写出查询优化的关系代数表达式;

解 (1)该查询的关系代数表达式为

?Jno(?City=’上海’?Color=’红’(S SPJ P)) ?Jno(?Sno(?City=’上海’(S)) ?Sno,Pno,Jno(SPJ) ?Pno(?Color=’

(2)查询优化的关系代数表达式为

红’(P)))

四、查询其他系比计算机系某一学生年龄小的学生姓名及年龄。(10分) 解

SELECT Sname,Age FROM S

WHERE Age

(SELECT Age FROM S

WHERE SD= ‘CS’)

AND SD<>‘CS’

22

五、要求建立“计算机”系学生的视图。(10分) 解

CREATE VIEW CS_STUDENT

AS SELECT Sno,Sname,Sage,Sex FROM Student WHERE SD=’CS’

六、要求建立一个“供应商”表S(Sno,Sname,Status,City)分别表示:供应商代码、供应商名、供应商状态、供应商所在城市。其中供应商代码不能为空,且值是唯一的,且供应商的名是唯一的。(10分) 解

CREATE TABLE S (Sno CHAR(3) NOT NULL UNIQUE, Sname CHAR(30)UNIQUE, Status CHAR(8),City CHAR(20))

数据库原理补考卷(2007-2008第一学期)

一、简答题:(20分,一个小题2分) 1 什么是数据库?

答:是长期存储在计算机内、有组织的可共享的数据集合。 2 什么是数据库管理系统?

答:是操纵和管理数据库的一组软件。具有定义、建立、维护和使用数据库的功能。 3 什么是关系?

答:关系是一张二维表,每个关系有一个关系名。 4 叙述等值连接与自然连接的区别和联系

答:自然连接是除去重复属性的等值连接。自然连接一定是等值连接,反之不一定。等值连接要求相等的属性分量,但不一定是相同的属性,而自然连接必需是相同的属性。等值连接不把相同的属性去掉,而自然连接去掉。 5 举例说明关系参照完整性的含义 答:在学生表student和链接表SC中,sno在学生表student 中是主键,sno在SC中不是主键,但sno的值必须满足或者为空,或者在另一个表中能找到,否则会出现错误。 6 说出关系规范化的目的

答:控制冗余,避免插入异常和删除异常,从而增强数据库结构的稳定性和灵活性。 7数据的安全性指的是什么?

答:保护数据库,防止未经授权的,或不合法的使用造成的数据泄露、更改或破坏。 8数据库的完整性指的是什么? 答:正确性和相容性。 9什么是事物?

答:是数据库管理系统的基本单位,是用户定义的一组逻辑一致的程序序列。要么都执行,要么都不执行。

10并发操作会产生几种不一致情况?用什么办法避免不一致的情况发生?

答:丢失修改,不能重复读和读脏数据。采用封锁机制来进行并发控制 ,避免不一致的情况发生。

二、试用关系代数表示下列查询语句:(20分,每小题5分) 1 检索“程军”老师所授课程的课程号(C#)和课程名(CNAME) 2 检索至少选修“程军”老师所授全部课程的学生姓名(SNAME) 3 检索选修课程包括“程军”老师所授课程之一的学生的学号

23

4 检索选修课程名为“C语言”的学生的学号(S#)和姓名(SNAME) S S# SNAME AGE SEX 1 2 3 C C# CNAME k1 C语言 K8 编译原理 SC

1 k1 83 解:

2 k1 85 1 ∏C#,CANME (бTEACHER=’程军’ (C))

5 k1 92 2 ∏SNAME (S (∏S#,C#(SC)÷∏C# (бTEACHER=’程军’(C))) )

2 k5 90 3 ∏S#(SC ∏C#(бTEACHER=’程军’(C)))

5 k5 84 4 ∏S#,SNAME (S ∏S#( SC (бCNAME=’C语言’(C))))

5 k8 80

三、(20分,每小题10分)

1已知学生表S和学生选课表SC,其关系模式如下: S(SNO,SN,SD,PROV) SC(SNO,CN,GR)

其中,SNO为学号,SN为姓名,SD为系名,PROV为省区,CN为课程名,GR为分数 试用SQL 语言实现下列操作:

(1)查询“信息系”的学生来自哪些省区

(2)按分数降序排序,输出“英语系”学生选修了“计算机”课程的学生姓名和分数 解:

(1) select PROV from S where SD=”信息系”

(2) select SN GR from S,SC where S.SNO=SC.SNO and SD=” 英语系” and CN=”计算机” order by GR desc

2设有学生表S(SNO,SN)和学生选课表SC(SNO,CNO,CN,G),试用SQL 语言实现下列操作:

(1)建立一个视图V-SSC(SNO,SN,CNO,CN,G),并按CNO升序排序 (2)从视图V-SSC上查询平均成绩在90分以上的SN,CN和G 解:

(1) create view V-SSC as select SNO,SN,CNO,CN,G from S,SC where S.SNO=SC.SNO order by CNO

(2) select SN,CN,G from V-SSC group by SNO having AVG(G)>90 四、(20分,每小题10分)

设有一教学管理数据库,其属性为:学号(S#),课程号(C#),成绩(G),任课老师(TN),教师所在的系(D)。这些数据有下列语义:(20分,每小题10分) S# C# GRADE

24

李强 刘丽 张友 23 22 22 男 女 男 TEACHER 王华 程军

K5 数据库原理 程军 ? 学号和课程号分别与其代表的学生和课程一一对应 ? 一个学生所修的每门课程都有一个成绩

? 每门课程只有一位任课教师,但每位老师可以有多门课程 ? 教师中没有重名,每个教师只属于一个系 (1)试根据上述语义确定函数依赖集

(2)如果用上面所有属性组成一个关系模式,那么该关系模式为何模式?并举例说明在进行增、删操作时的异常现象。 解:

(1)F={(S#,C#)→G,C#→TN,TN→D}

(2)关系模式为1NF,因为该关系模式的候选关键字为(S#,C#),则非主属性有G,TN和D。又因为F中有C#→TN,所以存在非主属性TN对候选关键字(S#,C#)的部分依赖。 五、(20分,每小题10分)

一个图书借阅管理数据库要求提供下述服务:

? 可随时查询书库中现有书籍的品种、数量与存放的位置,书号是唯一标识。

? 可随时查询书籍的借还情况。包括借书人单位、姓名、借书证号、借还书日期,借书证

号具有唯一性。一人可借多本书,一种书可由多人借。 ? 一个出版社出版多种书,同一本书只能有一个出版社出版。在数据库中要保存出版社的

电报编号,电话,邮编及地址以便向有关书籍的出版社增购有关书籍。 根据以上情况和假设,试做如下设计: (1)构造满足需求的E-R图

(2)转换为等价的关系模型结构。 解:

(1)满足上述需求的E-R图如下:

借书证号 姓名 单位

借书人

m 借书日期

出版社名 电报编号 借阅 还书日期

n

电话 图书 出版社 出版 m l

书号 书名 数量 位置 邮编 地址

(2)转换为等价的关系模型结构如下: 借书人(借书证号,姓名,单位)

图书(书号,书名,数量,位置,出版社名) 出版社(出版社名,电报,电话,邮编,地址) 借阅(借书证号,书号,借书日期,还书日期)

25