一.选择题
1. ( B )是长期储存在计算机内、有组织的、可共享的大量数据的集合。
A. 数据库系统
B. 数据库
C. 关系数据库
D. 数据库管理系统
2. (1) 在数据库的三级模式中,内模式有( A )。
A.1 个
B.2 个
C.3 个 D.任意多个
2. (2) 在数据库的三级模式中,外模式有( D )。
A.1 个
B.2 个
C.3 个 D.任意多个
2. (3) 在数据库的三级模式中,模式有( A )。
A.1 个
B.2 个
C.3 个 D.任意多个
2. (4) 在数据库的三级模式体系结构中,内模式、模式和外模式个数的比例是( B )。
A.1:1:1
B.1:1:N
C.1:M:N
D.M:N:P
3. 数据模型的三个要素分别是( B )。
A. 实体完整性、参照完整性、用户自定义完整性
B. 数据结构、关系操作、完整性约束
C. 数据增加、数据修改、数据查询
D. 外模式、模式、内模式
4. 数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是( A )。
A. DBS 包括 DB 和 DBMS
C. DB 包括 DBS 和 DBMS
B. DBMS 包括 DB 和 DBS
D. DBS 就是 DB,也就是 DBMS
5. 在关系模式 R 中,Y 函数依赖于 X 的语义是:(
B
)。
A. 在 R 的某一关系中,若两个元组的 X 值相等,则 Y 值也相等。
B. 在 R 的每一关系中,若两个元组的 X 值相等,则 Y 值也相等。
C. 在 R 的某一关系中,Y 值应与 X 值相等。
D. 在 R 的每一关系中,Y 值应与 X 值相等。
6. 若对于实体集 A 中的每一个实体,实体集 B 中有 n 个实体(n≥0)与之联系,而对于实体集 B 中
的每一个实体,实体集 A 中只有 1 个实体与之联系,则实体集 A 和实体集 B 之间的联系类型为
( B
)。
A.1:1
B.1:N
C.M:N
D.N:1
6. (2) 若对于实体集 A 中的每一个实体,实体集 B 中有 1 个实体(n≥0)与之联系,而对于实体集 B
中的每一个实体,实体集 A 中只有 1 个实体与之联系,则实体集 A 和实体集 B 之间的联系类型为
( A
)。
A.1:1
B.1:N
C.M:N
D.N:1
7.下列不属于数据安全性控制方法的是( D )。
A.用户标识和鉴定
B.用户存取权限控制 C.数据加密
D.网络流量控制
8.若关系 R 为 M 列 P 行,关系 S 为 N 列 Q 行,则( B )的结果为 M+N 列 P×Q 行。
A.R-S
B.R×S
C.R÷S
D.R S
9. 数据模型应满足(
D )的要求。
A.真实模拟现实世界 B.容易为人们所理解 C.便于在计算机上实现 D.以上都是
10. 在可信计算机系统评测标准中,达到初步安全产品要求的是(
)级。
A.C1
B.C2
C.B1
11. 下面的选项不是关系数据库基本特征的是(
A
D.B2
)。
A. 不同的列应有不同的数据类型
B. 不同的列应有不同的列名
C. 与行的次序无关
D. 与列的次序无关
12. 实现数据库安全性控制的常用方法和技术有(
A
)
A. 用户标识与鉴别、存取控制、视图机制、审计、数据加密
B. 存取控制、视图机制、审计、数据加密、防火墙
C. 用户标识与鉴别、存取控制、视图机制、审计、防火墙
D. 存取控制、视图机制、审计、数据加密、数据转储
13. 数据的(
B
)是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存
在不正确的数据。数据的(
)是保护数据库防止恶意的破坏和非法的存取。
A. 安全性、完整性
B. 完整性、安全性
C. 保密性、安全性
D. 安全性、保密性
14. SQL 语言的 GRANT 和 REVOKE 语句主要是用来维护数据库的(
C
)。
A.完整性
C.安全性
B.可靠性
D.一致性
15. 关系模型中,一个码是( C )。
A. 可以由多个任意属性组成
B. 至多由一个属性组成
C. 由一个或多个属性组成,其值能够惟一标识关系中一个元组
D. 以上都不是
16. 当关系 S 自然联接时,能够把 S 原该舍弃的元组放到结果关系中的操作是 (
D
)
A.左外联接
B.右外联接
C.外部并
D.外联接
17. 下列不属于需求分析阶段工作的是:(
A
)。
A. 建立 E-R 图
B. 分析用户活动
C. 建立数据字典
D. 建立数据流图
18. 数据库系统的数据独立性体现在(
B
) 。
A. 不会因为数据的变化而影响到应用程序
B. 不会因为数据存储结构与数据逻辑结构的变化而影响应用程序
C. 不会因为存储策略的变化而影响存储结构
D. 不会因为某些存储结构的变化而影响其他的存储结构
19. 若关系 R 为 M 列 P 行,关系 S 为 N 列 Q 行,则 R×S 的结果为(
B
)列(
)行。
A.M+N、P+Q
B.M+N、P×Q
C.M×N、P+Q
D.M×N、P×Q
20. 在 SQL 语言的 Select 语句中实现选择运算的子句是(
A
)。
A.Select
B.From
C.Where
D.Group by
21.数据库系统的数据独立性体现在( B ) 。
A. 不会因为数据的变化而影响到应用程序
B. 不会因为数据存储结构与数据逻辑结构的变化而影响应用程序
C. 不会因为存储策略的变化而影响存储结构
D. 不会因为某些存储结构的变化而影响其他的存储结构
22.如果事务 T 对数据 D 已加 S 锁,则其他事务对数据 D(
A )
A. 可以加 S 锁,不能加 X 锁
C. 不能加 S 锁,可以加 X 锁
B. 可以加 S 锁,也可以加 X 锁
D. 不能加任何锁
23.当关系 S 自然联接时,能够把 S 原该舍弃的元组放到结果关系中的操作是 (
D
)
A.左外连接
二.填空题
B.右外连接
C.外部并
D.外连接
1. 数据模型通常分为层次模型、(
网状模型
)、(
关系模型
)、面向对象模型和对
象关系模型等。
2. 关系模型中有三类完整性约束:(
实体完整性
)、(
参照完整性
)和
用户定义的完整性。
3. 关系数据库中,二维表中的列称为关系的( 属性或字段 ),二维表中的行称为关系的
(
元组或记录
)。
4. DBMS 的主要功能有:(
数据定义功能
)、数据组织存储和管理功能、(
数
据操作功能
)、数据库的事务管理和运行功能、 数据库的建立和维护功能。
5. 关系代数运算中,专门的关系运算有(
选择
),(
投影
)和连接。
6. 已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,
系编号)两个关系,学生关系的主码是(
学号
),学生关系的外码是(
系编
号
)。
7.关系的实体完整性规则定义了(
主键字段
)不能取空值。
8.关系的参照完整性规则定义了
和
之间的引用规则。
9.事务的 ACID 特性包括:(
原子性
)、一致性、(
独立性
)和持续性。
10.事务并发控制机制中,避免活锁产生的方法是采用(
先来先服务
)的策略;
11.第二范式是在第一范式的基础上消除了(
部分函数依赖
)。
13.(
事务
)是并发控制的基本单位。
14.在数据库的两层映像中,(
模式/内模式映像
)保证了物理独立性。
14.在数据库的两层映像中,(
外模式/模式映像
)保证了逻辑独立性。
15.事务并发控制机制中,预防死锁的方法是(
一次封锁法
)和(
顺序封锁
法
);
16.第三范式是在第二范式的基础上消除了(
传递函数依赖
17.数据库系统的三级模式结构是指数据库系统由(
外模式
)。
)、(
模式
)和
(
内模式
)三级构成。
18.建立冗余数据最常用的技术是数据转储和(
备份日志文件
)。
19.数据库设计分为如下几个阶段:( 需求分析 )、( 结构设计 )、(
行为设计
)、
( 数据库实施 )、( 数据库运行和维护 )。
20.数据库结构设计包括( 概念结构设计 )、( 逻辑结构设计 )、( 物理结构设计 )。
21.基本的锁类型有两种:( 排他锁或 X 锁或写锁 )、( 共享锁或 S 锁或读锁 )
22.并发操作带来的数据不一致性情况大致可以分为四种:( 丢失数据修改 )、( 读“脏数
据” )、( 不可重复读 )和产生幽灵数据。
三、简答题
1.设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。设
一名学生可以选修多门课程号,一门课程号可以被多名学生选修;一名学生有唯一的所在系,每门课
程号有唯一的课程名和学分。
回答以下问题:(1)根据上述规定写出关系模式 R 的基本函数依赖;
(2)找出关系模式 R 的候选码;
(3)试问关系模式 R 最高已经达到第几范式?为什么?
(4)将 R 分解成 3NF 模式集。
答:(1)学号
(姓名,所在系,性别)F
课程号
(课程名,学分)F
(学号,课程号)
成绩 F
(学号,课程号)
(姓名,所在系,性别,课程号,学分)P
(2)候选码:学号,课程号
(3)存在部分函数依赖,R 达到第一范式
(4)Student(学号,姓名,所在系,性别)
SC(学号,课程号,成绩)
Course(课程号,课程名,学分)
2.设有关系模式:学生表(学号,姓名,所在系,班号,班主任,系主任)。其语义为:一名学生只
在一个系的一个班学习,一个系只有一名系主任,一个班只有一名班主任,一个系可以有多个班。
回答以下问题:(1)根据上述规定写出关系模式 R 的基本函数依赖;
(2)找出关系模式 R 的候选码;
(3)试问关系模式 R 最高已经达到第几范式?为什么?
(4)将 R 分解成 3NF 模式集。
答:(1)学号
(姓名,所在系,班号,班主任,系主任)F
班号
(班主任,系主任)F
班主任
系主任 F
所在系
系主任 F
(2)候选码:学号
(3)存在传递依赖,不存在部分函数依赖,R 达到第二范式
(4)Student(学号,姓名,所在系,班号)
Class(班号,班主任)
Dept(所在系,系主任)
3.设有关系模式:授课表(课程号,课程名,学分,授课教师号,教师名,授课时数)。其语义为:
一门课程号有确定的课程名和学分,每名教师有确定的教师名,每门课程号可以由多名教师讲授,每
名教师也可以讲授多门课程,每名教师对每门课程号有确定的授课时数。
回答以下问题:(1)根据上述规定写出关系模式 R 的基本函数依赖;
(2)找出关系模式 R 的候选码;
(3)试问关系模式 R 最高已经达到第几范式?为什么?
(4)将 R 分解成 3NF 模式集。
答:(1)课程号
(课程名,学分)F
授课教师号
教师名 F
(授课教师号,课程号)
授课时数 F
(授课教师号,课程号)
(课程名,学分,教师名)P
(2)候选码:授课教师号,课程号
(3)存在部分函数依赖,R 达到第一范式
(4)Course(课程号,课程名,学分)
Teacher(授课教师号,教师名)
CT(课程号,授课教师号,授课时数)
4.(20 分)设某图书集团有一关系模式 R 如下:R(书店编号,书籍编号,库存数量,部门编号,负
责人)如果规定:(1)每个书店的每种书籍只在该书店的一个部门销售;
(2)每个书店的每个部门只有一个负责人;
(3)每个书店的每种书籍只有一个库存数量。
回答以下问题:(1)根据上述规定写出关系模式 R 的基本函数依赖;
(2)找出关系模式 R 的候选码;
(3)试问关系模式 R 最高已经达到第几范式?为什么?
(4)将 R 分解成 3NF 模式集。
答:(1)有三个函数依赖:
(书店编号,书籍编号)
部门编号 (2 分)
(书店编号,部门编号)
负责人 (2 分)
(书店编号,书籍编号)
库存数量 (2 分)
部门编号
负责人
书籍编号
库存数量
(2)R 的候选码:(书店编号,书籍编号) (3 分)
(3)R 属于 2NF。
(2 分)
因为 R 中存在着非主属性“负责人”对候选码(书店编号,书籍编号)的传递函数依赖,所以 R
属于 2NF。(3 分)
(4)分解成:
R1(书店编号,书籍编号,库存数量,部门编号)
(3 分)
R2(书店编号,部门编号,负责人)
(3 分)
四、综合题
1.设有一个 SPJ 数据库,包括 S、P、J、SPJ 四个关系模式:
供应商表 S(供应商代码 SNO,供应商姓名 SNAME,供应商状态 STATUS,供应商所在城市 CITY);
零件表 P(零件代码 PNO,零件名 PNAME,颜色 COLOR,重量 WEIGHT);
工程项目表 J(项目代码 JNO,项目名 JNAME,项目所在城市 CITY);
供应情况表 SPJ(供应商代码 SNO,零件代码 PNO,项目代码 JNO,供应数量 QTY);
用 SQL 语言完成如下查询:(1)找出所有供应商的姓名和所在城市;
(2)求供应工程 J1 零件 P1 的供应商号码 SNO;
(3)求供应工程 J1 零件为红色的供应商号码 SNO;
(4)找出所有零件的名称、颜色、重量;
(5)找出上海厂商供应的所有零件号码;
(6)找出工程项目 J2 使用的各种零件的名称及其数量;
(7)找出所有供应商的姓名和所在城市;
(8)找出所有零件的名称、颜色、重量;
(9)找出使用供应商 S1 所供应零件的工程号码;
(10)找出工程项目 J2 使用的各种零件的名称及其数量。
(1)select SNAME,CITY from S (2 分)
(2)select SNO from SPJ where JNO=’J1’ and PNO=’P1’ (3 分)
(3)select SNO from SPJ where SPJ.PNO=P.PNO and JNO=’J1’ and COLOR=’red’ (3 分)
(4)select PNAME,COLOR,WEIGHT from P; (3 分)
(5)select S.SNO from S,P,SPJ where S.SNO=SPJ.SNO and SPJ.PNO=P.PNO and CITY=’上海’;(3
分)
(6)select PNAME,WEIGHT from P,SPJ where P.PNO=SPJ.PNO and JNO=’J2’; (3 分)
(7)Select sname, city1 from S ; (2 分)
(8)Select Pname, color, weight from P;(2 分)
(9)Select
Jno from SPJ where
sno=’s1’; (3 分)
(10)Select P.pname , SPJ.qty from SPJ, P
where SPJ.pno = P. pno and SPJ.Jno=’J2’; (3 分)
2.设某商业集团数据库中有三个实体集:
商店:商店编号、商店名、地址
商品:商品编号、商品名、规格、单价
职工:职工编号、姓名、性别、业绩
每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售一种商品时有月销售
量;每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。
(1)试画出 E-R 图,要求在图上注明属性及联系的类型;
(2)将 E-R 图转换成关系模型,并注明主码;
(3)根据实际情况,使用 SQL 创建表,包括各种约束;
(4)用 SQL 语句查找大于平均业绩的职工姓名;
(5)用 SQL 语句创建一个业绩大于 100 的所有男职工信息的视图。
(1)(5 分)
(2)这个 E-R 图可转换为 4 个关系模式:(8 分)
商店(商店编号,商店名,地址)
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪) (2 分)
商品(商品编号,商品名,规格,单价) (2 分)
(2 分)
销售(商店编号,商品编号,月销售量)
(2 分)
(3) create shop(Sid char(3) primary key, Sname char(10), Sadd char(50)); (2 分)
create employee(Eid char(3) primary key, Ename char(5), Esex char(1), Each real, Sid char(3),
Ere date, Esa int, foreign key (Sid) references (shop)); (2 分)
create commodity(Cid char(3) primary key, Cname char(10), Csp char(10), Cpr real); (2 分)
create vendition(Sid char(3), Cid char(3), Vse int, primary key (Sid,Cid),
foreign key (Sid) references (shop), foreign key (Cid) references (commodity)); (2 分)
(4)select Ename from employee x where Each>=(select avg(Each) from employee y where y.Each=x.Each);
( 2
分)
(5) create view Eman(Eid, Ename, Esex, Each, Sid, Ere, Esa)
As select Eid, Ename, Esex, Each, Sid, Ere, Es from employee where Each>100 and Esex=’男’;(2
分)
3.(10 分)设有学生表 S(SNO,SN),其中 SNO 为学号,SN 为姓名;
学生选课表 SC(SNO,CNO,CN,G),其中 CNO 为课程号,CN 为课程名,G 为成绩,用 SQL 语言完成以
下各题:(1)建立一个视图 V-SSC(SNO,SN,CNO,CN,G),并按 CNO 升序排序;(5 分)
(2)从视图 V-SSC 上查询平均成绩在 90 分以上的 SN,CN 和 G。(5 分)
(1)CREATE VIEW V-SSC(SNO,SN,CNO,CN,G)