2.在下列关于关系的陈述中,错误的是(B )
A 表中任意两行的值不能相同 B 表中任意两列的值不能相同 C 行在表中的顺序无关紧要 D 列在表中的顺序无关紧要
3.为了防止一个用户的工作不适当地影响另一个用户,应该采取(并发控制 )
| A | B | C | D |
| 1 | 2 | 3 | 4 |
| 1 | 3 | 4 | 5 |
| 2 | 4 | 5 | 6 |
| 1 | 4 | 3 | 4 |
| 1 | 3 | 4 | 7 |
| 3 | 4 | 5 | 6 |
5.存在一个等待事务集{T0,T1,…,Tn},其中T0正等待被T1锁住的数据项,T1正等待被T2锁住的数据项,Tn-1正等待被Tn锁住的数据项,且Tn正等待被T0锁住的数据项,则系统的工作状态处于(死锁 )
6.关系R(A,B)和S(B,C)中分别有10个和15个元组,属性B是R的主码,则中元组数目的范围是((0,15) )
7.已知关系R如图1所示,可以作为R主码的属性组是(B )
A.ABC B.ABD C.ACD D.BCD
8.数据管理经过了手工文档、文件系统和 数据库系统三个发展阶段9.SQL语言中,用于事务回滚的语句是:rollback。
10.用于表达一个ODBC驱动程序和DBMS特殊连接的命名,被称为__数据源__,它是数据库驱动程序与数据库系统连接的桥梁。
11.DBMS利用事务日志保存所有数据库事务的_____更新____操作。
12.要保证数据库的数据性,需要修改的是:三层模式之间的两种映射
13.关系数据模型的三个组成部分中:完整性规则,数据结构,数据操作
14.数据库管理系统(DBMS)由以下三类程序组成:语言、控制数据库运行和维护数据库,其中的语言系统分为主语言和_数据子语言_。
15.通过加锁可以保证处理程序并发时的数据_完整性_。
16.关系代数中专门的关系运算包括:选择、投影、___连接___和除法。
17.从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、修改异常、插入异常和__删除异常__
18.关系数据操作语言(DML)的特点是:操作对象与结果均为关系、操作的__非过程性强__、语言一体化、并且是建立在数学理论基础之上。
19.数据库的物理设计主要考虑三方面的问题:__选择存储结构__、分配存储空间、实现存取路径。
20.数据库完整性的静态约束条件分为:值的约束和_结构的约束__。
21.构成系统说明书的两个重要文档是_数据流程图和数据字典_。
22.单个用户使用的数据视图的描述称为:外模式
23.子模式DDL用来描述:数据库的局部逻辑结构
24.在DBS中,DBMS和OS之间的关系是: DBMS调用OS
25.五种基本关系代数运算是:∪,-,×,π和σ
26.当关系R和S自然联接时,能够把R和S原该舍弃的元组放到结果关系中的操作是: 外联接
27.下列聚合函数中不忽略空值 (null) 的是:COUNT ( * )
28.在数据库设计中,将ER图转换成关系数据模型的过程属于: 逻辑设计阶段
29. DBMS中实现事务持久性的子系统是: 恢复管理子系统
30.SQL的全局约束是指基于元组的检查子句和: 断言
31.一个类可以从直接的或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的_可重用性 (或共享性)_。
32. 关系数据库的关系演算语言是以_谓词演算_为基础的DML语言。
33.DB并发操作通常会带来三类问题,它们是丢失修改(更新)、_不可重复读__和读脏数据。
34.事务必须具有的四个性质是:原子性、一致性、___隔离性__和持久性。
1.简要说明事务的原子性:事务的所有操作必须完成,否则事务将被撤消。也就是说,事务是作为一个整体的单位处理,不可以被分割。
2.简单说明排它锁和它的作用:排它锁又称为写锁。如果事务T对数据对象X加上排它锁,则只允许事务T读取和修改数据项X,其他任何事务都不能对X加任何类型的锁,直到T释放X上的锁。(2分)从而保证其他事务在T释放X上的锁之前不能再读取和修改X。(1分)
3.解释文件系统为什么会存在数据冗余?这种数据冗余会导致哪两类典型的问题?:由于文件系统难于实现数据共享,因此,相同的数据可能会在多个文件中重复出现,即产生数据冗余。(1分)
数据冗余会导致数据(或更新)异常(1分)和数据不一致性(1分)。
4.在开发和使用数据库应用系统过程中,SQL Server的许可系统为什么将用户分成四类?请将它们按层次从高到低排列出来:不同角色分担不同职责(1分)
系统管理员(SA) 数据库拥有者(DBO)数据库对象拥有者(DBOO)
一般用户(User)
5.数据库系统:是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机软件、硬件和数据资源组成的系统。
6.网状模型:用有向图结构表示实体类型及其联系的数据模型。
7.关系:关系是一个元数为K(K≥1)的元组的集合。
8.并发控制:就是用正确的方法调度并发操作,以免不同事务的执行会互相带来干扰。
9.简述数据库系统的体系结构特点:三级模式结构和两级映象,即:外模式、模式、内模式、外模式/模式映象、模式/内模式映象。
10.数据库的保护包括哪四个子系统:安全性控制、完整性控制、并发控制和存储管理。
11.SQL语言具有什么功能?:数据定义、数据操纵、数据控制和SQL语句嵌入。
12.简述数据库概念设计的主要步骤。:进行数据抽象、设计局部概念模式
将局部概念模式综合成全局概念模式,对全局结构进行评审。
13.设有两个关系R (A,B,C) 和S (C,D,E),试用SQL查询语句表达下列关系代数表达式πA,E (σB = D (R∞S)) :SELECT A,E FROM R,S WHERE B = D AND R.C = S.C
14. SQL中表达完整性约束的规则主要有哪几种?: 有主键约束、外键约束、属性值约束和全局约束等。
4、设计题(本大题共4小题,每小题5分,共20分)
1.设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资和所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。(回答36—39题)
36.试用SQL语句完成以下查询:
列出各部门中工资不低于600元的职工的平均工资。
37.写出“查询001号职工所在部门名称”的关系代数表达式。
38.请用SQL语句将“销售部”的那些工资数额低于600的职工的工资上调10%。
UPDATE EMP
SET SALARY=SALARY*1.1
WHERE ENO IN (2分)
(SELECT ENO
FROM EMP, DEPT
WHERE EMP.DNO=DEPT.DNO
AND DNAME=‘销售部’
AND SALARY<600=(3分)
39。有如下关系代数表达式
请将其转化成相应的SQL语句。
SELECT ENO
FROM EMP, DEPT(2分)
WHERE EMP.DNO=DEPT.DNO
AND DEPT.MANAGER=‘001’(3分)
2.现有关系数据库如下:
学生(学号,姓名,性别,专业、奖学金)
课程(课程号,名称,学分)
学习(学号,课程号,分数)
用关系代数表达式实现下列1—4小题:
1.检索“国际贸易”专业中获得奖学金的学生信息,包括学号、姓名、课程名和分数;
Π学号,姓名,课程名,分数(σ奖学金>0∧专业=国际贸易(学生∞学习∞课程))
2.检索学生成绩得过满分(100分)的课程的课程号、名称和学分;
Π课程号,名称,学分(σ分数=100(学习∞课程))
3.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;
Π学号,姓名,专业(σ奖学金<=0∧分数>95(学生∞学习))
4.检索没有任何一门课程成绩在80分以下的学生的信息,包括学号、姓名和专业;
Π学号,姓名,专业(学生)—Π学号,姓名,专业(σ分数<80(学生∞学习)
用SQL语言实现下列5—8小题:
5.检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;
SELECT 学生.学号,姓名,专业
FROM 学生,学习
WHERE 学生.学号=学习.学号 AND 学习.课程号=课程.课程号 AND 奖学金<=0 AND 分数>95
6.检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业;
SELECT 学号,姓名,专业
FROM 学生
WHERE 学号 NOT IN
(SELECT 学号
FROM 学习
WHERE 分数<80)
7.对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为1000元;
UPDATE 学生
SET 奖学金=1000
WHERE 奖学金<=0 AND 学号 IN
(SELECT 学号
FROM 学习
WHERE 分数=100)
8.定义学生成绩得过满分(100分)的课程视图AAA,包括课程号、名称和学分;
CREATE VIEW AAA(课程号,名称,学分)
AS SELECT 课程号,名称,学分
FORM 课程
WHERE 课程号 IN
(SELECT 课程号
FROM 学习
WHERE 分数=100)
3.设有关系数据库:职工关系EMPLOYEE (职工号,职工名,街道,城市)
工作关系WORKS (职工号,公司号,工资)
公司关系COMPANY (公司号,公司名,城市)
假设职工可在多个公司兼职,请用关系代数表达式写出至少在公司号为‘C2’和‘C5’公司兼职的职工的职工号。(略)
试用SQL语句写出下列操作:
将所有在“联华公司”工作的职工加薪5﹪。UPDATE WORKS
SET工资 = 工资 * 1.05 WHERE公司号IN (SELECT公司号 FROM COMPANY
WHERE公司名 =‘联华公司’);
图书出版管理数据库中有两个基本表:
图书 (书号,书名,作者编号,出版社,出版日期)
作者 (作者编号,作者名,年龄,地址)
试用SQL语句写出下列查询:检索年龄低于作者平均年龄的所有作者的作者名、书名和出版社。
Select 作者名,书名,出版社
From 图书,作者
WHERE 图书 . 作者编号 = 作者 . 作者编号
AND 年龄 < = (SELECT AVG (年龄)
FROM 作者);
学校有多名学生,财务处每年要收一次学费。为财务处收学费工作设计一个数据库,包括两个关系:
学生 (学号,姓名,专业,入学日期)
收费 (学年,学号,学费,书费,总金额)
假设规定属性的类型:学费、书费、总金额为数值型数据;学号、姓名、学年、专业为字符型数据;入学日期为日期型数据。列的宽度自定义。
试用SQL语句定义上述表的结构。(定义中应包括主键子句和外键子句)
CREATE TABLE 学生
(学号 CHAR (8),
姓名 CHAR (8),
专业 CHAR (13),
入学日期 DATE,
PRIMARY KEY (学号));
CREATE TABLE 收费
(学年 CHAR (10),
学号 CHAR (8),
学费 NUMERIC (4),
书费 NUMERIC (5,2),
总金额 NUMERIC (7,2),
PRIMARY KEY (学年,学号),
FOREIGN KEY (学号) REFERENCES 学生 (学号));
6、应用题(每小题5分,共20分)
现有如下关系模式:
R(A#,B#,C,D,E)
其中:A#B#组合为码
R上存在的函数依赖有A#B#→E,B#→C,C→D
1.该关系模式满足2NF吗?为什么?
2.如果将关系模式R分解为:
R1(A#,B#,E)
R2(B#,C,D)
指出关系模式R2的码,并说明该关系模式最高满足第几范式?(在1NF~BCNF之内)。
3.将关系模式R分解到BCNF。
4.在E-R模型中,如果实体间是1∶M的联系,如何设计相应部分的关系模型?
答案:
1.不满足。
因为码为A#B#,并且B#→E,而E是非主属性。
2.R2的码为B#
R2最高满足2NF
3.R1(A#,B#,E)
R2(B#,C)
R3(C,D)
都满足BCNF
4.将两个实体分别对应两个关系模式,并且在“多”端实体对应模式中加入“一”端实体所对应关系模式的码,以及关联属性。
5、综合题 (本题共10分)
41. 假设某商业集团数据库中有一关系模式R如下:
R (商店编号,商品编号,数量,部门编号,负责人)
如果规定:(1) 每个商店的每种商品只在一个部门销售;
(2) 每个商店的每个部门只有一个负责人;
(3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:
(1) 根据上述规定,写出关系模式R的基本函数依赖;
(2) 找出关系模式R的候选码;
(3) 试问关系模式R最高已经达到第几范式?为什么?
(4) 如果R不属于3NF,请将R分解成3NF模式集。
答案: (1) 有三个函数依赖:(商店编号,商品编号) →部门编号
(商店编号,部门编号) →负责人
(商店编号,商品编号) →数量
(2) R的候选码是 (商店编号,商品编号)
(3) 因为R中存在着非主属性“负责人”对候选码 (商店编号、商品编号)的传递函数依赖,所以R属于2NF,R不属于3NF。
(4) 将R分解成:R1 (商店编号,商品编号,数量,部门编号)
R2 (商店编号,部门编号,负责人) 下载本文