资源描述
1、在IMS系统中查找最先满足条件的第一个记录是:
(A) GN (B) GU (C) GNP (D) GHU
2、对关系R进行投影运算得到S,则R与S的关系是:
S从属于R
3、记载数据库系统运行过程中所有更新操作的文件是:
(A)更新文件 (B)后备文件 (C)日志文件 (D)数据文件
4、在面向对象的模型中,表示实体中每个属性时,使用___个变量,____个消息
对象之间的相互作用都得通过发送消息和执行消息完成。消息是对象之间的接口,消息分成只读型和更新型两种。在面向对象模型中,实体的每个属性应该用一个变量和两个消息表示。变量用来存储属性的值,一个消息用来读属性的值,另一个消息用来更新属性值。
6、视图是为了提高数据库系统的____
(A)完整性 (B)并发控制 (C)隔离性 (D)安全性
7、E-R模型中,6个实体集,7个不同的二元联系,其中2个1:N,2个1:1,3个M:N,则转换成关系数目是____个
8、事务日志用于保存__对数据的更新操作_____
9、事务1以S锁方式读取数据A时,事务2可以进行的操作是_______
(A)对数据实行X锁并读数据 (B)对数据实行S锁并写数据
(C)对数据实行X锁并写数据 (D)不加锁去读数据
共享锁(S锁):
如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。
排他锁(X锁):
如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类型的封锁。获准排他锁的事务既能读数据,又能修改数据。
10、JSP方法是一种面向___数据结构__的设计方法
11、数据耦合
数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言的值传递.
一个模块访问另一个模块时,彼此之间是通过简单数据参数 (不是控制参数、公共数据结构或外部变量) 来交换输入、输出信息的。
12、Jackson图
13、软件质量控制
14、提高程序效率的途径(选出那个不能有效地提高)
15、黑盒测试的概念
16、生产性维护是什么?
17、版本控制
18、有一个n个顶点,e条弧的有向图用邻接表表示,则删除与某顶点Vi相关的所有弧的时间复杂度是___O(n+e)____
19、算法指的是:
20、线形链表的特性
灵活链表使用指针链表示线形表元素的逻辑关系,插入和删除只需修改指针,不能随机存取。
21、将长为n的单链表接到长为m的单链表后操作的时间复杂度是:
O(m)
从链表头到链表尾需要花O(m)的时间。之后再链接上要O(1)的时间。跟链接上的链表长度无关
所以总共要O(m)的时间
22、适于对动态查找表进行高效率查找的组织是:
(A)有序表 (B)分块有序表 (C)三叉排序树 (D)线性链表
23. 设主串长为n,模式串长为m(m≤n),则在匹配失败情况下,朴素匹配算法进行的无效位移 次数为()
A. m
B. n-m
C. n-m+1
D. n
答案:C
24、二维数组地址问题(简单)
25、L=((a,b),(c,d),(e,f)) tail(tail(L))的结果是:
26、ISAM和VSAM的区别是:
A.前者是索引顺序文件,后者是索引非顺序文件
B.前者只能进行顺序存取,后者只能进行随机存取
C.前者建立静态索引结构,后者建立动态索引结构
D.前者的存储介质是磁盘,后者的存储介质不是磁盘
答案:C
27、如果要求一个线性表既能较快地查找,又适应动态变化的要求,可以采用____查找方法
(A)二分 (B)顺序 (C)分块 (D)散列
答案:D
30、IEEE802.5标准中说法错位的是()
(A)只存在一个有效的令牌 (B)不支持优先级
(C)没有一个中央监控站 (D)存在预约指示器
34、NetWare操作系统的组成是:(选出不包括那个)
37、CMIP采用的监控网络实体的方法是:
41、窄带ISDN用于因特网接入的144kbps信道是由哪一项组成的()
(A)B+D (B)2B+D (C)2B+2D (D)B+2D
42、可用于RBB的主要技术不包括()
(A)xDSL (B)CATV (C)电话线 (D)局域网
48、寻址(间接、变址、相对)
51-55是软件测试一段话,从中选出正确的。
软件测试[1-2]是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。
它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。
测试原则
一,测试应该尽早进行,最好在需求阶段就开始介入,因为最严重的错误不外乎是系统不能满足用户的需求。
二,程序员应该避免检查自己的程序,软件测试应该由第三方来负责。
三,设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下要制造极端状态和意外状态,如网络异常中断、电源断电等。
四,应该充分注意测试中的群集现象。
五,对错误结果要进行一个确认过程。一般由A测试出来的错误,一定要由B来确认。严重的错误可以召开评审会议进行讨论和分析,对测试结果要进行严格地确认,是否真的存在这个问题以及严重程度等。
六,制定严格的测试计划。一定要制定测试计划,并且要有指导性。测试时间安排尽量宽松,不要希望在极短的时间内完成也有一个高水平的测试。
七,妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。
测试目标
1.发现一些可以通过测试避免的开发风险。
2.实施测试来降低所发现的风险。
3.确定测试何时可以结束。
4.在开发项目的过程中将测试看作是一个标准项目。
测试阶段
单元测试
主条目:单元测试
单元测试是对软件组成单元进行测试,其目的是检验软件基本组成单位的正确性,测试的对象是软件设计的最小单位:模块。
集成测试
主条目:集成测试
集成测试也称联合测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。其主要目的是检查软件单位之间的接口是否正确,集成测试的对象是已经经过单元测试的模块。
系统测试
主条目:系统测试
系统测试[8]主要包括功能测试、界面测试、可靠性测试、易用性测试、性能测试。 功能测试主要针对包括功能可用性、功能实现程度(功能流程&业务流程、数据处理&业务数据处理)方面测试。
回归测试
主条目:回归测试
回归测试指在软件维护阶段,为了检测代码修改而引入的错误所进行的测试活动。回归测试是软件维护阶段的重要工作,有研究表明,回归测试带来的耗费占软件生命周期的1/3总费用以上。
与普通的测试不同,在回归测试过程开始的时候,测试者有一个完整的测试用例集可供使用,因此,如何根据代码的修改情况对已有测试用例集进行有效的复用是回归测试研究的重要方向,此外,回归测试的研究方向还涉及自动化工具,面向对象回归测试,测试用例优先级,回归测试用例补充生成等。
56-63是一道读程序,从中选出正确的。
64、65是两道SQL题
66-70触发器的题,添Having in 什么的
insert 触发器示例
create trigger tri_insert
on student
for insert
as
declare @student_id char(10)
select @student_id=s.student_id from
student s inner join inserted i
on s.student_id=i.student_id
if @student_id='0000000001'
begin
raiserror('不能插入1的学号!',16,8)
rollback tran
end
go
update触发器示例
create trigger tri_update
on student
for update
as
if update(student_id)
begin
raiserror('学号不能修改!',16,8)
rollback tran
end
go
delete触发器示例
create trigger tri_delete
on student
for delete
as
declare @student_id varchar(10)
select @student_id=student_id from deleted
if @student_id='admin'
begin
raiserror('错误',16,8)
rollback tran
end
71-75是CSMA/CD的一段话,从中有几个空,然后选择正确的填入
CSMA/CD是一种争用型的介质访问控制协议。它起源于美国夏威夷大学开发的ALOHA网所采用的争用型协议,并进行了改进,使之具有比ALOHA协议更高的介质利用率。主要应用于现场总线Ethernet中。另一个改进是,对于每一个站而言,一旦它检测到有冲突,它就放弃它当前的传送任务。换句话说,如果两个站都检测到信道是空闲的,并且同时开始传送数据,则它们几乎立刻就会检测到有冲突发生。它们不应该再继续传送它们的帧,因为这样只会产生垃圾而已;相反一旦检测到冲突之后,它们应该立即停止传送数据。快速地终止被损坏的帧可以节省时间和带宽。
CSMA/CD控制方式的优点是:
原理比较简单,技术上易实现,网络中各工作站处于平等地位 ,不需集中控制,不提供优先级控制。但在网络负载增大时,发送时间增长,发送效率急剧下降。
CSMA/CD应用在 OSI 的第二层数据链路层
它的工作原理是: 发送数据前 先侦听信道是否空闲 ,若空闲,则立即发送数据。若信道忙碌,则等待一段时间至信道中的信息传输结束后再发送数据;若在上一段信息发送结束后,同时有两个或两个以上的节点都提出发送请求,则判定为冲突。若侦听到冲突,则立即停止发送数据,等待一段随机时间,再重新尝试。
其原理简单总结为:先听后发,边发边听,冲突停发,随机延迟后重发
CSMA/CD采用IEEE 802.3标准。
模 拟 试 卷 (一)答 案 一、单项选择题(本大题共20小题,每小题1分,共20分) 1. 提供数据库数据描述的集中管理的是 ( D )
A.数据库模式 B.数据库 C.数据库管理系统 D.数据字典
2. 授权和完整性管理器属于DBMS的 ( B )
A.查询处理器 B.存储管理器 C.事务管理器 D.用户管理器
3. 使用CREATE SCHEMA 语句建立的是 ( A )
A.数据库模式 B.表 C.视图 D.索引
4. 设关系R和S的结构相同,并且各有80个元组,假如这两个关系作交运算, 其运算结果的元组个数为 ( B )
A.80 B.小于等于80 C.大于等于160 D.大于等于80,小于等于160
5. 在SQL的授权语句中使用“ALL PRIVILEGES”,表示 ( B )
A.授权所有用户 B.所有的操作权限 C.对所有的数据集合 许再授权
6. 表达业务流程分析结果的图表是 ( B )
A.业务流程图 B.数据流图 C.局部E-R图 D、基本E-R图
7. 对数据库模式进行规范化处理,是在数据库设计的 ( C )
A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段
8. 能够消除冗余的键的范式是 ( C )
A.2NF B.3NF C.4NF D. BCNF
9. 在下列几种故障中,不破坏数据库内容的是 ( B )
A.计算机病毒发作 B.供电系统故障
C.瞬时的强磁场干扰 D.磁盘介质损坏
10. 在数据库技术中,独立于计算机系统的模型是 ( A )
A.E-R模型 B.层次模型 C.关系模型 D.面向对象的模型
11. 五种基本关系代数运算是 ( A )
A.∪,-,×,π和σ B.∪,-,∞,π和σ
C.∪,∩,×,π和σ D.∪,∩,∞,π和σ
12. SQL中,下列涉及空值的操作,不正确的是 ( C )
A.AGE IS NULL B.AGE IS NOT NULL
C.AGE = NULL D.NOT (AGE IS NULL)
13. 单个用户使用的数据视图的描述称为 ( A )
A.外模式 B.概念模式 C.内模式 D.存储模式
14. 在删除基本表中某个元组时,将以此表为参照表的关系中外键与主键相同的元组一起删除,应采用的方式是 ( B )
A.RESTRICT方式 B.CASCADE方式
C.SET NULL方式 D.CHECK方式
15. 在客户机/服务器体系结构的DBS中,数据库功能分为前端和后端两部分,下列功能属于后端的是 ( B )
A.用户界面 B. 存取结构
C.数据输入 D. 报表输出
二、填空题(本大题共20个空,每空1分,共20分)
1. 结构数据模型的组成包括:数据结构,(数据操作)和(数据完整性约束)。
2. 在函数依赖中,平凡的函数依赖根据Armstrong推理规则中的(自反)律就可推出。
3. 标准的数据库三级模式是概念模式、(内)模式和(外)模式。
4. 用有向图结构表示实体类型及实体间联系的数据模型称为(网状)模型。
5. 若用户编写程序时,只需指出做什么,不需指出怎么做,这类DML是(非过程性)DML;关系的DML属于这一类。
6. 在SQL中,用(MODIFY)命令可以修改表中的数据,用(ALTER)命令可以修改表的结构。
7. 在ER图中,菱形框表示(联系)。
8. 物理结构设计是设计DB的物理结构,主要包括DB的(存储结构)和存取方法。
9. 并发控制的主要方法是采用(封锁机制)。
10. 在并行处理中,若干事物相互等待对方释放封锁,称为系统进入(死锁)状态。
11. DDBS的“地址透明性”位于(分片)模式和(分布)模式之间。
三、名词解释(本大题共5个小题,每小题3分,共15分) 1. 概念模式
是数据库中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。 概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性、安全性等要求。
2. X封锁
如果事务T对数据R实现X封锁,那么其他的事务要等T解除X封锁以后,才能对这个数据进行封锁。 只有获准X封锁的事务,才能对被封锁的数据进行修改。
3. 复制透明性
即用户不必关心数据库在网络中各个结点的数据库复制情况,更新操作引起的波及由系统去处理。
4. 主属性
包含在任何一个候选键中的属性。
5. 事务的原子性
一个事务对数据库的操作是一个不可分割的操作系列,事务要么完整地被全部执行,要么全部不执行。
四、简答题(本大题共5小题,每小题5分,共25分)
1. 设有关系R与S
R:
A B C 2 3 4 4 5 6 7 8 9
S:
D E 7 5 4 8
计算 π3,2(R), σA=D(R×S)
π3,2(R): σA=D(R×S) :
C B A B C D E
4 3 7 8 9 7 5
6 5 4 5 6 4 8
9 8
2. 设R=ABCD,R上的F={A→C,D→C,BD→A}, 试证明ρ={AB,ACD,BCD}相对于F不是无损联接分解。 根据算法4.2
B
1
2
13 b
14
CD a
1
22 a
3
4
CD
31a
2
3
4
B
C
a2
a3
14
b22
a3
4
a2
a3
a4
(1) 构造表
(2)根据A→C,D→C,BD→A进行处理
没有一行都是a,所以,ρ相对于F不是无损联接分解。
3. 什么是“运行记录优先原则”?其作用是什么? 在数据库系统中,写一个修改到数据库中和写一个表示这个修改的登记记录到日志文件中是两个不同的操作,在这两个操作之间有可能发生故障。这时,如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改,那么以后也就无法撤消这个修改。为了安全起见,采用“运行记录优先原则”。它包括两点: (1)至少要等相应运行记录已经写入“日志”文件后,才能允许事务往数据库中写记录。 (2)直至事务的所有运行记录都已写入运行“日志”文件后,才能允许事务完成“END TRANSACTION”处理。 4. 试叙述分布式DBMS的功能。
主要功能有: (1)接受用户请求,并判定把它送到哪里,或必须访问哪些计算机才能满足该请求。 (2)访问网络数据字典,或者至少了解如何请求和使用其中的信息。 (3)如果目标数据存储于系统的多个计算机上,就必须进行分布式处理。 (4)通信接口功能,在用户、局部DBMS和其他计算机的DBMS之间进行协调。 (5)在一个异构型分布式处理环境中,还需提供数据和进程移植的支持。这里的异构型是指各个场地的硬件、软件之间存在一定差别。 5. 数据独立性与数据联系这两个概念有什么区别? 数据独立性是指应用程序与数据之间相互独立,不受影响。 数据联系是指同一记录内部各字段间的联系,以及记录之间的联系。
五、程序设计题(本大题共4小题,每小题5分,共20分)
1.对于教学数据库的三个基本表 学生 S(S#,SNAME,AGE,SEX) 学习 SC(S#,C#,GRADE) 课程 C(C#,CNAME,TEACHER)
试用关系代数表达式和SQL语句表示:检索WANG同学不学的课程号。
(1)πC#(C)-πC#(σSNAME='WANG'SSC) 或者
πC#(SC)-πC#(σSNAME='WANG'SSC)(全部课程号减去WANG同学所学的课程号) (2)SELECT C#
FROM C
WHERE C# NOT IN
(SELECT C#
FROM SC
WHERE S# IN
SELECT S#
FROM S
WHERE SNAME=‘WANG’)
2.教学数据库的基本表如上题,有如下关系代数表达式: πC#,CNAME(C(πS#,C#(SC)÷πS#(S)))
请写出对应的SQL语句,并指出其汉语含义。
汉语含义:检索全部学生都选修的课程的课程号与课程名。 SELECT C#,CNAME FROM C WHERE NOT EXISTS (SELECT * FROM S WHERE NOT EXISTS (SELECT * FROM SC WHERE SC.S#=S.S# AND SC.C#=C.C#)) 3.设销售数据模型如下:
厂家 S (SNO,SNAME,CITY )
产品 P (PNO,PNAME,COLOR,WEIGHT)
销售 SPJ (SNO,PNO,QTY)
用SQL完成以下操作:
试建立一个有关产品“电钻”的产品号和厂家号的视图,其结构如下:View2(ENO, SNO)
CREATE VIEW View2(ENO, SNO)
AS SELECT P.PNO,SNO
FROM SPJ,P
WHERE SPJ.PNO=P.PNO AND PNAME="电钻";
4.在以上销售数据库表中,用SQL语句完成以下操作:PNO为'00227'的产品数增加100;并检索出其对应的产品名。
UPDATE SPJ
SET QTY=QTY+100
WHERE PNO='00227';
SELECT PNAME
FROM P
WHERE PNO='00227';
六、应用题(本大题10分) 1. 学生运动会模型:
(1)有若干班级,每个班级包括: 班级号,班级名,专业,人数
(2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号,姓名,性别,年龄
(3)有若干比赛项目,包括:项目号,名称,比赛地点
(4)每名运动员可参加多项比赛,每个项目可有多人参加
(5)要求能够公布每个比赛项目的运动员名次与成绩
(6)要求能够公布各个班级团体总分的名次和成绩
解题要求:
(1)画出每个实体及其属性关系、实体间实体联系的E-R图.
(2)根据试题中的处理要求:完成数据库逻辑模型,包括各个表的名称和属性.并指出每个表的主键和外键。
(1)
(2)
班级(班级号,班级名,专业,人数) 主键:班级号
运动员(运动员号,姓名,性别,年龄,班级号)
主键:运动员号 外键: 班级号
项目(项目号,项目名,比赛地点) 主键:项目号 比赛(运动员号,项目号,成绩,名次,得分) 主键:运动员号,项目号 外键: 运动员号;项目号
模 拟 试 卷 (二)
一、单项选择题(本大题共20小题,每小题1分,共20分) 1.下述各项中,属于数据库系统的特点的是 ( C )
A.存储量大 B.存取速度快 C.数据独立性 D.操作方便
2. 在关系中,能唯一标识组的属性集称为关系模式的 ( D )
A.候选键 B.主键 C.外键 D.超键
3.在数据操作语言(DML)的基本功能中,不包括的是 ( B )
A.插入新数据 B.描述数据库结构
C.对数据库中数据排序 D. 删除数据库中数据
4. 数据库中全体数据的整体逻辑结构描述称为 ( B )
A.存储模式 B.内模式 C.外模式 D.右外模式
5. 对于分布式数据库,可以简单归纳为 ( B )
A.数据逻辑上分散,物理上统一
B.数据物理上分散,逻辑上统一
C.数据在逻辑上、物理上都是分散的
D.数据在逻辑上、物理上都是统一的
6.在关系R与关系S进行自然连接时,只把R中原该舍弃的元组保存到新关系中,这种操作称为 ( C )
A.外连接 B.内连接 C.左外连接 D.右外连接
7.在SQL中使用FOREIGN KEY 时,与之配合的语句是 ( D )
A.EXISTS B.EXCEPT C.TABLE D.REFERENCES
8.定义片段以及全局关系与片段之间映像的模式是 ( C )
A.外模式 B. 概念模式 C.分片模式 D.分配模式
9.在客户机/服务器体系结构的DBS中,数据库功能分为前端和后端两部分,下列功能属于后端的是 ( B )
A.用户界面 B.存取结构 C.数据输入 D.报表输出
10. 能够消除多值依赖引起的冗余的范式是 ( C )
A.2NF B.3NF C.4NF D.BCNF
11. 位于分片视图和分配视图之间的透明性是 ( D )
A.全局数据模型透明性 B.分片透明性
C.局部数据模型透明性 D.位置透明性
12. 设关系模式R (A,B,C),F是R上成立的FD集,F = {B→C},则分解ρ = {AB,BC}相对于F ( A ) A.是无损联接,也保持FD的分解 B.是无损联接,但不保持FD的分解 C.不是无损联接,但保持FD的分解 D.既不是无损联接,也不保持FD的分解 13. DBMS中实现事务持久性的子系统是 ( D ) A.安全性管理子系统 B.完整性管理子系统 C.并发控制子系统 D.恢复管理子系统
14. RDBS的含义是 ( C )
A.面向对象的数据库系统 B.数据库管理系统 C.对象关系数据库系统 D.对象关系数据库
15. 在SQL中,建立视图用 ( C ) A.CREATE SCHEMA 命令 B.CREATE TABLE 命令 C.CREATE VIEW 命令 D.CREATE INDEX 命令
二、填空题(本大题共20个空,每空1分,共20分) 1. 对数据模型的规范化,主要是解决(插入异常)、(删除异常)和数据冗余过大的问题。 2. 数据模型分为(概念)数据模型和(结构)数据模型。 3. 在关系中,内模式是(存储)模式的集合。 4. 当数据库系统的概念模式改变时,(模式/外模式的映象) 要作相应的改变,以保证外模式保不变。 5. 嵌入式SQL需要用(游标机制)把集合操作转换成单记录处理方式。 6. 在SQL中表达完整性约束的规则有多种形式,其主要约束有(主键约束),(外健约束),(属性值约束)和全局约束。 7. 在模式分解时,为保持原模式的特性,要求分解具有(无损失连接)和(保持函数依赖)。 8. 好的模式设计应符合表达性、分离性和(最小冗余性)。 9. 分布式数据库系统是(数据库技术)与(计算机网络)技术结合的产物。
三、名词解释(本大题共5个小题,每小题3分,共15分) 1. DML
数据操纵语言(Data Manipulation Language),由DBMS提供,用于让用户或程序员使用,实现对数据库中数据的操作。 DML分成交互型DML和嵌入型DML两类。依据语言的级别,DML又可分成过程性DML和非过程性DML两种。
2. S封锁
共享型封锁。如果事务T对某数据R加上S封锁,那么其它事务对数据R的X封锁便不能成功, 而对数据R的S封锁请求可以成功。这就保证了其他事务可以读取R但不能修改R,直到事务T释放S封锁。
3. 分布式DBS
是指数据存放在计算机网络的不同场地的计算机中,每一场地都有自治处理能力并完成局部应用; 而每一场地也参与(至少一种)全局应用程序的执行,全局应用程序可通过网络通信访问系统中的多个场地的数据。 4.事务 数据库系统的一个操作系列,这些操作或者都做,或者都不做,是一个不可分割的工作单位 5. 丢失更新 当两个或以上的事务同时修改同一数据集合时,由于并发处理,使得某些事务对此数据集合的修改被忽视了.
四、简答题(本大题共5小题,每小题5分,共25分)
1. 简述数据字典的内容和作用. 是对系统中数据的详尽描述,它提供对数据库数据描述的集中管理。它的处理功能是存储和检索元数据,并且为数据库管理员提供有关的报告。对数据库设计来说,数据字典是进行详
细的数据收集和数据分析所获得的主要成果。 数据字典包括数据项,数据结构,数据流,数据存储和数据处理过程.
2.有两个关系R(ABC)和S(DBF),元组关系演算表达式是:
{t|(u)(v)(R(u)∧S(v)∧u[3]=v[1]∧t[1]=u[1]∧t[2]=v[3])}
写出域关系演算表达式。
{xyz|(u)(v)(w)(R(xuv)∧S(vwy))} 3.设有关系R与S
R:
A B C 2 3 4 4 5 6 7 8 9
S:
D E 7 5 4 8
(1)计算T:
T={t|(u)(R(t)∧S(u)∧t[3]>u[1])}
A B C
7 8 9
4.试述客户/服务器式DBS的一般结构。此时数据库应用的功能如何划分?
客户/服务器式DBS是在客户/服务器计算机网络上运行的DBS,这个计算机网络中,有一些计算机扮演客户,另一些计算机扮演服务者(即客户机/服务器)。客户/服务体系结构的关键在于功能的分布。一些功能放在客户机(前端机)上运行,另一些功能则放在服务器(后端机)上执行。此时数据库应用的功能分成两部分: 客户机(前端部分):由一些应用程序构成,例如,格式处理、报表输出、数据输入、图形,实现前端处理和用户界面。 服务器(后端部分):包括存取结构、查询优化、并发控制、恢复等系统程序,完成事务处理和数据访问控制。
5.死锁的发生是坏事还是好事?试说明理由。如何解除死锁状态?
死锁的发生即是坏是又是好事。 (1)使并发事务不能继续执行下去,造成时间开销却不产生结果。 (2)在某些时候我们要利用它来解决更新操作导致的数据库不一致状态。 解除死锁状态:抽出某个事务作为牺牲品,把它撤消,做回退操作,解除它的所有封锁,并恢复到初始状态。
五、程序设计题(本大题共4小题,每小题5分,共20分)
1. 设有两个基本表R(A,B,C)和S(A,B,C)
试用SQL查询语句表达下列关系代数表达式: (1)R-S (2)πA,B(R)πB,C(S)
(1) SELECT A,B,C FROM R WHERE NOT EXISTS (SELECT A,B,C FROM S WHERE R.A=S.A AND R.B=S.B AND R.C=S.C) (2) SELECT R.A,R.B,S.C FROM R,S WHERE R.B=S.B
2.对于教学数据库的三个基本表 学生 S(S#,SNAME,AGE,SEX) 学习 SC(S#,C#,GRADE) 课程 C(C#,CNAME,TEACHER) 试用SQL语句完成:在基本表S中检索每一门课程成绩都大于等于80分的学生学号、姓名和性别,并把检索到的值送往另一个已存在的基本表STUDENT(S#,SNAME,SEX)。
INSERT INTO STUDENT(S#,SNAME,SEX) SELECT S#,SNAME,SEX FROM S WHERE NOT EXISTS (SELECT * FROM SC WHERE GRADE<80 AND S.S#=SC.S#)
3.在以上的基本表中,完成以下操作:检索选修课程包含LIU老师所授课的学生学号。 SELECT DISTINCT S# FROM SC WHERE C# IN (SELECT C# FROM C WHERE TEACHER='LIU'))
4.在以上的基本表中,写出与下列关系代数表达式一致的SQL语句:
πcno(C)-πcno(σsname='LIU'(SCC))
SELECT CNO
FROM C
WHERE CNO NOT IN
( SELECT CNO
FROM S,SC
WHERE S.SNO=SC.SNO
AND SNAME='LIU');
六、应用题(本大题10分) 1.已知:R∈3NF,且具有唯一的候选键. 求证:R∈BCNF 设R的唯一候选键为Z. 如果关系模式R属于BCNF模式,那么“关系模式R是第一范式,且每个属性都不传递依赖于R的候选键。” 用反证法,假设R不属于BCNF。 根据定义,关系模式R不属于BCNF,则某个属性传递依赖于R的候选键。 由于R只有唯一的候选键Z,那么,存在属性Y,使Z→X,X→Y( XZ,X不包含Y)成立。
(1)如果Y是主属性,那么由于只有一个侯选键,因此YZ,
由于X→Y (XZ,X不包含Y),Z'=(Z∪X-Y)→Z,Z'不包含Y;也就是说,Z'肯定包含某个侯选键,该侯选键不包含Y。与前面条件中R有唯一的候选键相矛盾。
(2)如果Y是非主属性,也就是说,不符合3NF“每个非主属性都不传递依赖于R的候选键”,与R∈3NF矛盾。
所以以上假设不成立。
因此 如果R∈3NF,且具有唯一的候选键,则R∈BCNF。
模 拟 试 卷 (三)
一、单项选择题(本大题共15小题,每小题1分,共15分) 1.结构数据模型的三个组成部分是数据结构、数据操作和 ( C )
A.数据安全性控制 B. 数据一致性规则
C.数据完整性约束 D.数据处理逻辑
2.在SQL的算术表达式中,如果其中有空值,则表达式 ( C ) A.空值按0计算 B.由用户确定空值内容再计算结果
C.结果为空值 D.指出运算错误,终止执行
3. 当两个关系没有公共属性时,其自然连接操作表现为 ( A )
A.笛卡儿积操作 B.等值连接操作
C.结果为空集 D.错误操作
4. 在数据库与宿主语言之间传递信息是通过 ( B )
A.全局变量 B.共享变量 C.公共数据区 D.系统缓冲区
5. 在关系模式R(U,F)中,R中任何非主属性对键完全函数依赖是R∈3NF的 ( B )
A.充分必要条件 B.必要条件 C.充分条件 D.既不充分也不必要条件
6.基本ER图就是数据库的 ( D )
A.外模式 B.逻辑模式 C.内模式 D. 概念模式
7. 对基本表S,执行操作DROP TABLE S RESTRICT 的作用是 ( C )
A.删除基本表S中的所有元组
B.把基本表S及其生成的一切视图全部删除
C.当没有由S中的列产生的视图或约束时将表S删除
D.删除表S,将引用表S的视图中一切S的属性置为空值
8. 在多用户共享系统中,并发操作的事务干扰,破坏了事务的 ( C )
A.原子性 B.一致性 C.隔离性 D.持久性
9. 关系R 与关系S只有1个公共属性,T1是R与S等值连接的结果,T2是R与S自然连接的结果,则 ( C )
A.T1的属性个数等于T2的属性个数
B.T1的属性个数小于T2的属性个数
C.T1的属性个数大于或等于T2的属性个数
D.T1的属性个数大于T2的属性个数 10. 当关系R和S自然联接时,能够把R和S原该舍弃的元组放到结果关系中的操作是( D ) A.左外联接 B.右外联接
C.外部并 D.外联接
11. 如果事务T获得了数据项Q上的排它锁,则T对Q ( C ) A.只能读不能写 B.只能写不能读 C.既可读又可写 D.不能读不能写
12. SQL的全局约束是指基于元组的检查子句和 ( C )
A.非空值约束 B.域约束子句 C.断言 D.外键子句
13. 表达业务流程分析结果的图表是 ( B ) A.业务流程图 B.数据流图 C.局部图 D.基本E-R图
14.在数据库技术中,未提交的随后又被撤消的数据称为 ( D )
A.错误数据 B.冗余数据 C.过期数据 D.脏数据
15.选择分布式数据库各片段数据存放场地的模式是 ( D )
A.外模式 B.概念模式 C.分片模式 D.分配模式
二、填空题(本大题共20个空,每空1分,共20分) 1. 事务的特性包括:(原子性)、一致性、隔离性、和(持久性)。 2. SQL数据库中的表,可以是基本表,也可以是(视图)。 3. 关系数据模型的数据完整性规则包括(实体)完整性、(参照)完整性和用户定义的完整性。 4. 在嵌入式SQL中,为解决主语言与SQL的不同数据结构,采用(游标)机制来进行转换。 5. E-R方法的三要素是:(实体)、(属性)和联系。 6. 分布式数据库系统的三种类型是:异构型、(同构同质)型和(同构异质)型。 7. 分布式数据库系统的特点是数据的(分布性)和整体的(逻辑性)。 8.数据字典的主要内容包括:数据项、数据结构、数据存储、(数据流)和处理过程。 9. 在数据库的物理结构中,数据的基本单位是(存储记录)。 10.关系代数中,连接是由(笛卡儿积)操作与选择操作组合而成的。
三、名词解释(本大题共5个小题,每小题3分,共15分) 1. 实体完整性规则
这条规则要求关系中元组在组成主键的属性上不能有空值。 如果出现空值,那么主键值就起不了唯一标识元组的作用。
2. 数据字典
是对系统中数据的详尽描述,它提供对数据库数据描述的集中管理。 它的处理功能是存储和检索元数据,并且为数据库管理员提供有关的报告。 对数据库设计来说,数据字典是进行详细的数据收集和数据分析所获得的主要成果。 数据字典主要包括四个部分:数据项、数据结构、数据流、数据存储。
3. 事务的隔离性
在并发事务被执行时,系统应该保证与这些事务先后单独执行时的结果一样,称事务达到了隔离性的要求。
4. 嵌入式SQL
将SQL语句嵌入高级程序设计语言中使用,发挥高级语言过程化处理 能力强的特点。
5. 参照完整性规则
这
展开阅读全文