《数据库原理与应用示范系统第三版习题与复习资料.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用示范系统第三版习题与复习资料.docx(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、习题一1. 试答复下列问题(1)什么是数据库?(2)什么是数据库管理系统?(3)什么是数据库系统?答:(1)数据库是被长期存放在计算机内,有组织的,统一管理的相关数据的集合。(2)数据库管理系统(Data Base Management System, 简称DBMS),是位于用户及操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序供应访问DB的方法,包括DB的建立、查询、更新及各种数据限制。(3)数据库系统(DBS)通常是指带有数据库的计算机应用系统。DBS是一个实际可运行的,根据数据库方法存储、维护和向应用系统供应数据支持的系统,它是数据库、硬件、软件和数据库管理员(DBA)
2、的集合体。2. 计算机数据管理经验了哪几个阶段?答:数据管理技术的开展经验了三个阶段:人工管理阶段、文件系统阶段、数据库系统阶段。3. 试述文件系统的缺点。答:(1)数据共享性差,冗余度大。(2)数据不一样性。(3)数据联络弱。4. 试述数据库系统的特点。答:(1)采纳困难的数据模型表示数据构造。(2)有较高的数据独立性。(3)数据的共享性高,冗余度低,易扩大。(4)数据由DBMS统一限制和管理。5. 试述概念模型的作用。答:概念模型是独立于计算机系统的数据模型,它完全不涉及信息在计算机系统中的表示,只是用来描绘某个特定组织所关系的信息构造。概念模型用于建立信息世界的数据模型,强调其语义表达实
3、力,概念应当简洁、清楚、易于用户理解,它是现实世界的第一层抽象,是用户和数据库设计人员之间进展沟通的工具。这一模型中最闻名的是“实体联络模型”。6. 说明下列概念: 内形式、形式、 外形式 、DDL、DML答:内形式也称存储形式(Storage Schema)。它是数据物理构造和存储方式的描绘,是数据在数据库内部的表示方式。一个数据库只有一个内形式。形式也称逻辑形式,是数据库中全体数据的逻辑构造和特征的描绘,是全部用户的公共数据视图。它是数据库系统形式构造的中间层。外形式也称子形式(Subschema)或用户形式,它是用户及数据库系统的接口,是用户用到的那局部数据的逻辑构造和特征的描绘,是数据
4、库用户的数据视图。DDL是数据定义语言(Data Definition LanguageDDL),用户通过它可以便利地对数据库中的数据对象进展定义。DML是数据操纵语言(Data Manipulation LanguageDML),实现对数据库中数据的操作。7. 试述数据库系统三级形式构造,这种构造的优点是什么?答:数据库系统的体系构造分成三级:内部级(internal),概念级(conceptual)和外部级(external)。这个三级构造也称数据库系统的“三级形式构造”。 内部级也称“内形式”,概念级也称“形式”,外部级也称“外形式”,故数据库系统是由外形式、形式和内形式三级构成,如下图
5、所示:形式/内形式映象外形式2外形式3外形式/形式映象 应用A应用B外形式1应用D应用E 形式应用C内形式 数据库8. 试述数据库的物理独立性和逻辑独立性。答:数据的独立性包括数据的物理独立性和数据的逻辑独立性。数据的物理独立性是指当数据在计算机存储设备上的物理存储变更时,应用程序可以不用改动,而由DBMS来处理这种变更。数据逻辑独立性是指当数据的整体逻辑构造变更时,不影响用户的逻辑构造以及应用程序。9. DBS由哪几局部组成?DBA的职责是什么?答:DBS一般由数据库(即实际存储在计算机中的数据)、数据库管理系统、相应的硬件、软件和各类人员构成。数据库系统是一个有运用人员及维护人员、加工设备
6、和数据资源的完好的计算机应用系统。DBA是数据资源管理机构的一组人员。总的来说,负责全面地管理和限制数据库系统。具体职责包括:(a) 确定数据库的信息内容和构造(b) 确定数据库的存储构造和存取策略(c) 定义数据的平安性要求和完好性的约束条件(d) 监视和限制数据库的运用和运行(e) 数据库的改良和重组10. 数据库管理系统的主要功能有哪些?答:DBMS的主要功能包括以下几个方面: 数据定义功能 数据操纵功能 数据库的运行管理 数据库的建立和维护功能11. 试述DBMS在用户访问数据库过程中所起的作用。答:应用程序通过DBMS读取数据库中记录,DBMS为程序开拓一个数据库的系统缓冲区,用于数
7、据的传输和格式的转换。12 试写出用户访问数据库的过程。答:(1)用户在应用程序中支配一条读记录的DML语句。该语句给出涉及的外形式中记录类型名及键值。当计算机执行该DML语句时,马上启动DBMS,并把读记录的吩咐传给DBMS。(2)DBMS接到吩咐后,加以分析,并调出程序A对应的外形式,检查该操作的合法权限,确定是否执行该吩咐。(3)在确定执行A的吩咐后,DBMS调出相应的形式描绘,并从外形式映象到形式,确定应读入哪些形式记录。(4)DBMS调出相应的内形式描绘,并将形式映象成为形式的内部记录形式,确定应读入哪些物理记录。(5)DBMS向操作系统(OS)发出从指定地址读取物理记录的吩咐。(6
8、)OS执行该吩咐,按指定地址从数据库把记录读入OS的系统缓冲区,进而读入数据库的系统缓冲区,并在操作完毕后向DBMS作出答复。(7)DBMS收到OS的答复后,将读入缓冲区中的数据转换成形式记录,外部记录。(8)DBMS把导出的外部记录从系统缓冲区送到应用程序A的工作区中。(9)DBMS向运行日志数据库中写入读一条记录的信息。(10)DBMS将读记录胜利及否信息返回给程序A。(11)程序A确定是否运用工作区中的数据。习题二1. 试述关系模型的3个组成局部。答:关系模型是由关系数据构造、关系操作集合和关系完好性约束三局部组成。这是关系模型的三要素。2.定义并理解下列术语。(1)域,笛卡尔积,关系,
9、元组,属性(2)主键,候选键,外键答:(1)域:一组具有一样数据类型的值的集合。给定一组域D1,D2,Dn,其笛卡尔积为:D1D2Dn(d1,d2,,dn)|di Di, i= 1, 2, , n ,其中每一元素(d1,d2,dn)叫做一个元组(Tuple)。D1D2Dn 的子集叫做域D1,D2,Dn上的关系。关系是笛卡尔积的有限子集,所以关系也是一个二维表,表的每一行表示一个元组,表的每一列对应一个域。对每列起一个名字,称为属性(Attribute)。 (2)假如一个属性集能唯一标识元组,又不含有多余属性,那么这个属性集称为候选键。主键(primary key):用户选作元组标识的一个候选键
10、称为主键。留意:若一个关系有多个候选键,只能指定其中一个为主键。假如关系中的属性或属性组不是本关系的主键,而是引用另一个关系的主键,则称这一属性或属性组为外键。3. 试答复下列问题:(1)可以表示任何关系代数操作的五种根本代数操作是什么?(2)连接、等值连接、自然连接、外连接、半连接的区分是什么?(3)元组关系演算表达式和域关系演算表达式的区分是什么?(4)域关系演算表达式的平安性定义是什么?答:(1)关系代数操作的五种根本代数操作是并、差、笛卡尔积、投影、选择。(2)连接也称为连接。它是从两个关系的笛卡尔积中选取属性间满意肯定条件的元组。为“=”的连接运算称为等值连接。它是从关系R及S的广义
11、笛卡尔积中选取A,B属性值相等的那些元组。自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进展比拟的重量必需是一样的属性组,并且在结果中把重复的属性列去掉。假如在R和S做自然连接时,保存被舍弃的元组,其空缺的另一关系的属性的值用空值(mull)填充,那么这种操作称为“外连接”操作。关系R和S的半连接操作记为R S,定义为R和S的自然连接在关系R的属性集上的投影,(3)在元组关系演算系统中,我们称t|P (t) 型表达式为元组演算表达式,其中P(t)是元组关系演算公式,t是元组变量。一个元组演算表达式表示一个关系。域关系演算类似于元组关系演算,不同的是用域变量代替元组变
12、量。域关系演算的变量在域中取值,故称为域变量,每个自由变量对应一个列或一个属性。(4)假如域关系演算表达式满意以下三个条件则是平安的:(1)每一个关系代数表达式有一个等价的、平安的元组演算表达式。(2)每一个平安的元组演算表达式有一个等价的平安域演算表达式。(3)每一个平安的域演算表达式有一个等价的关系代数表达式。4. 设有关系R和S,如图2-9所示,试计算:RS、RS 、RS、 RS。 A B C A B C a b c b g a d a c d c d c bd(b) S d c d(a) R答:RS: A B C a b c d a c c bd d c d b g aRS: A B
13、C d c d R-S: A B C a b c d a c c bd RS:RA RB RC SA SB SC a a d d c c d d b b a a b bcc c ccc d d dd b d b d b d b dgc gc gc g c ad ad ad a d5 . 设有关系R和S,如图2-10所示。计算:RS, RS,AC(RS)。 B23SD=计算机(S))(6)取出不选“操作系统”课程的学生姓名及年龄。答:SN,SA-SN,SA(s S# (cN操作系统(C) SC)(7)取出学号为S1的学生选修的课程号、课程名及成果。答:C#,CN,GS (CC#,GS (S#S1
14、(SC)(8)取出全部学生都选修的课程号及课程名。S#,c#(SC)S#(S) C#,CN(C)9. 试用元组关系演算表达式表示第8题的各个查询语句。(1)取出全部学生的全部细微环节答: tS (t)(2)取出选修课程号为C2的学生姓名及所属的系。答:t($ u)($v)(S(u)SC(v)v2=C2u1=v 1t 1=u 2t2=u3)(3)取出同时选修课程号为C1和C2两门课程的学生名字。答:t($w) ($ u)($v)(S(w)SC(u)SC(v)u2=C1v2=C2u 1=v 1w 1=u 1t1=w2)(4)取出选修“BASIC”语言这门课程的学生姓名。答:t($ u)($v)($
15、w) (S(u)SC(v)C(w)u1=v1v2=w1w2=“BASIC”t 1=u 2)(5)取出年龄大于23岁的计算机系的学生姓名。答:w($t)(S(t)t 423t 3=计算机w 1=t2)(6)取出不选“操作系统”课程的学生姓名及年龄。答:t($ u)(v)($w) (C(u)SC(v)S(w)u2=“操作系统”u1=v1t 1=w 2t 2=w 4w1 v 1) (此答案仅供参考)(7)取出学号为S1的学生选修的课程号、课程名及成果。答:t($ u)($v)($w) (S(u)SC(v)C(w)u1=v1v2=w1w2=“BASIC”t 1=u 2)(8)取出全部学生都选修的课程号
16、及课程名。答:t($ u)(v)($w) (C(u)S(v)SC(w)u1=w2w1=v1t1=u1t 2=u 2)10. 若对于第8题的学生一课程数据库进展下列检索操作,试指出检索后的结果。用汉语句子表达出来。(1)S(CC1(SC)答:取出选修课程号为C1的学生学号。(2)SN(S,C(SC)C(C)S,SN(S)答:取出选修全部课程的学生姓名。11. 假设R和S分别是三元和二元关系,试把表达式1 ,5(2=43=4(RS) 转换成等价的:(1)汉语查询句子;答:从R及S的笛卡儿积中选择R的第2列及S的第1列相等或者R的第3列及S的第1列相等的元组并投影R的第1列及S的第2列。(2)元组表
17、达式;答:t($ u)($v)(R(u)S(v)t 1=u 1t 2=v2(u2=v 1u 3=v 1))(3)域表达式。答: xv($x)($u)(R(xyz)(S(uv)(y=uz=u)12. 假设R和S都是二目关系,试把元组表达式 tR(t) ($ u)( S(u)u 1t 2)转换成等价的:(1)汉语查询句子;答:从R中选择R的第2列及S的第1列值不相等的那些元组,组成新的关系。(2)关系代数表达式;答:1 ,2(23(RS)(3)域表达式答:xy(R(xy)($u)(S(uv)uy)13. 把域关系演算表达式ab|R(ab)R(ba)(1)转换为元组关系演算表达式。答:tR(t)($
18、 u)(R(u)t1=u 2t 2=u1)(2)转换为关系代数表达式。答:1 ,2(1=42=3(RR)习题三1 SELECT 编号,姓+名 FROM家庭成员表2SELECT编号,姓+名 FROM 家庭成员表 WHERE生日=1972-08-043SELECT A.姓+A.名,B.角色 FROM家庭成员表A, 角色表B WHERE A.成员编号=B.编号4SELECT A.姓+A.名,B.地址 FROM家庭成员表A, 家庭状况表B WHERE A.地址编号=B.地址编号5SELECT编号,姓+名 FROM 家庭成员表 WHERE SUBSTR(生日,1,2)=”1965”6SELECT 编号,
19、姓+名 FROM家庭成员表 WHERE 发送贺卡=YES7SELECT 编号,姓+名 FROM家庭成员表 WHERE成员编号 IN(SELECT编号 FROM 角色表 WHERE 角色=子女)8INSERT INTO 家庭成员表 VALUES(16,1,鹏,李,7,#1972-09-04#,NO,#2005-1-16#,喜爱踢足球)9DELETE FROM 家庭成员表 WHERE 地址编号 IN (SELECT 地址编号 FROM家庭状况表 WHERE 国家=英国)10UPDATE 家庭成员表 SET发送贺卡=YES WHERE地址编号 IN (SELECT 地址编号 FROM 家庭状况表 W
20、HERE省/自治区/直辖市=北京)习题四1. 说明下列术语: 函数依靠 局部函数依靠 传递函数依靠 完全函数依靠 主键 外部键答:设有关系形式R(),是R的属性的集合,X、Y,对于R的随意关系实例r,r中的随意两个元组t和s,假如tX=sX,则tY=sY,则称Y函数依靠于X,或称X函数地确定Y,记作XY。设R是一个具有属性集合的关系形式,假如XY ,并且对于X的任何一个真子集Z,ZY都不成立,则称Y完全函数依靠于X,记作:XY 。若XY,但Y不完全函数依靠于X,则称Y局部函数依靠于X,记作:XY。设R是一个具有属性集合的关系形式,X,Y,Z是的子集,YX不成立,ZX、ZY和YX不空。假如XY,
21、YZ则称Z传递函数依靠于X,记作:XZ。设R是一个具有属性集合 的关系形式,K是的子集 。若K满意下列两个条件,则称K是R的一个候选键。(1)K(2)不存在K的真子集Z,使得Z。候选键可以唯一地识别关系的元组。一个关系形式中可能具有多个候选键。我们可以指定一个候选键作为主键。设X是关系形式R的属性的子集。假如X是另一关系形式的候选键,则称X是R的外部键。2. 什么是范式?它有几种类型?这些类型之间的关系是什么?答:关系数据库中的关系满意肯定的要求。而把满意不同程度要求的关系称为不同的范式。满意最低要求的关系叫第一范式,简称1NF。在第一范式中进一步满意肯定要求的为第二范式,简称2NF,其余以此
22、类推。各种范式之间的联络是: INF 2NF 3NF 4NF 5NF3. 3NF及BCNF有何区分和联络?答:假如关系形式R是2NF,且它的任何一个非主属性都不传递函数依靠于任何候选键,则称R为第三范式。假如关系形式R1NF,且每个函数依靠XY,X必为候选键,则R是BCNF范式。假如R是BCNF,由定义可知,R中不存在任何属性传递地函数依靠或局部地函数依靠于任何候选键,所以R必为3NF。但是,反过来,假如R是3NF,R未必是BCNF。因为3NF中可能存在主属性传递地函数依靠或局部地函数依靠于键。4. 设有关系形式R(A,B,C,D,E)上的函数依靠集为F,并且FABC,CDE,BD,EA(1)
23、试求关系形式R的全部侯选键。答:R的全部侯选键为:A、BC、CD和E。(2)关系形式R最高是第几范式?答:关系形式R最高是第3范式。(3)分别将关系形式R标准到3NF和BCNF。答:关系形式R已是第3范式,故只需分解为BCNF。BD,该函数依靠不满意BCNF将R分解为R1(BD)和R2(ABCE),此时R1和R2已是BCNF。5. 下面的结论哪些是正确的,哪些是错误的?对于错误的结论请给出反例说明。(1) 任何一个二目关系都属于3NF。()(2) 任何一个二目关系都属于BCNF。()(3) 任何一个二目关系都属于4NF。()(4) 当且仅当函数依靠AB在R上成立,关系R(A,B,C)等于其投影
24、R1(A,B)和R2(A,C)的连接。()(5) 假如R.AR.B,R.BR.C,则R.AR.C。()(6) 假如R.AR.B,R.AR.C,则R.AR.(B,C)。()(7) 假如R.BR.A,R.CR.A,则R.(B,C)R.A。()(8) 假如R.(B,C)R.A,则R.BR.A,R.CR.A。()习题五1简述数据库设计的几个阶段及其探讨的目的.答:(1)需求分析阶段:需求分析是整个设计过程的根底,是最困难、最消耗时间的一步。需求分析是否做得充分及精确,确定了在此根底上创立数据库及应用程序的速度及质量。需求分析做得不好,轻则使应用程序的开发反复性比拟大,重则会导致整个数据库设计返工重做。
25、无论那一种都将造成宏大的经济奢侈,给企业、单位和个人造成肯定程度的影响。因此,这一阶段必需仔细对待。(2)概念构造设计阶段概念构造设计是整个数据库设计的关键。是系统分析员根据用户的需求进展综合、归纳及抽象后形成一个独立于具体DBMS的整体概念模型。它是对用户需求的一种总结及升华,它更可以表达用户需求的整体全貌。(3)逻辑构造设计阶段逻辑构造设计是将概念构造转换为所选择的DBMS所支持的数据模型,并对其进展优化。对于不同的数据库管理系统,本身支持的功能也不完全一样,所以一般要根据用户的需求选择一个适宜的DBMS。一味地选择大型数据库将增加系统开销,同时也未必能真正发挥大型数据库的全部优势。(4)
26、数据库物理设计阶段数据库物理设计是为逻辑数据模型选取一个最合适应用环境的物理构造(包括存储构造和存取方法)。根据需求的不同,实行的数据处理方法也不同,而不同的方法效率将由存储构造及存取方法确定。但一般来说,在关系型数据库系统中,数据的存取对用户是透亮的,故一般不再考虑物理设计这一问题。(5)数据库施行阶段在数据库施行阶段,设计人员运用DBMS(如 SQL Server)供应的数据语言(一般为SQL语言)及前端开发环境(如Visual Basic、Delphi等),根据逻辑设计和物理设计的结果建立数据库,编制及调试应用程序,组织数据入库,并进展试运行。(6)数据库运行和维护阶段数据库应用系统经过
27、试运行后,即可投入正式运行。在数据库系统运行过程中必需不断地对其进展评价、调整及修改。设计一个完善的数据库应用系统是不行能一蹴而就的,它往往是上述6个阶段的不断反复的过程。下面各节将分别介绍这6个阶段。2 理解数据流图的功能及其表示方法.答:数据流图符号及其含义符号含义或数据源点或终点或交换数据或处理或数据存储数据流3 理解数据字典的作用及其表示方法.答:数据字典是各类数据描绘的集合。对数据库设计来讲,数据字典是进展具体的数据搜集和数据分析所获得的主要结果。因此在数据库设计中占有很重要的地位。数据字典通常包括数据项、数据构造,数据流和处理过程4个局部。其中数据项是数据的最小组成单位,若干个数据
28、项可以组成一个数据构造,数据字典通过对数据项和数据构造的定义来描绘数据流、数据存储的逻辑内容。4 说明术语:实体,实体集合,属性,关系.答:实体集合是一个具有一样属性的实体集合,由一个实体型的名字和一组属性来定义。实体型表示的实体集合中的任一实体称为该实体型的实例,简称实体。每个实体都有一些特征或性质,称为实体的属性。一个联络型的实体对应约束规定了该联络型所关联的实体间的对应关系。实体对应约束包括三种,分别为一对一约束(1:1)、一对多约束(1:N)和多对多约束(M:N)。5 什么是关系,关系模型是如何表示关系之间的对应关系的.答:(略)6 试述把E-R图转换成关系模型的转换规则。答:转换遵循
29、如下原则:(1) 一个实体型转换为一个关系形式,实体的属性就是关系形式的属性,实体的键即为关系形式的键。对于实体间联络,就要视1:1,1:N,M:N三种不同状况做不同的处理:(2) 一个1:1联络可以转换为一个独立的关系形式,也可以及随意一端对应的关系形式合并。假如转换为一个独立的关系形式,则及该联络相连的各实体的键以及联络本身的属性均转换为关系的属性,每个实体的键均是该关系的候选键。假如是及某一端实体对应的关系形式合并,则须要在该关系形式的属性中参加另一个关系形式的键和联络本身的属性。 (3) 若实体间的联络是1:N的,则可以及N端对应的关系形式合并,并在N端实体型转换的关系形式中参加1端实
30、体型转换成的关系形式的键和联络的属性。若将1:N联络转换为一个独立的关系形式,则及该联络相连的各实体转换成的关系形式的键以及联络本身的属性均转换为关系的属性,而关系的键为N端实体对应的关系形式的键。(4)若实体间的联络是M:N的,则将该联络转换为一个独立的关系形式,其属性为两端实体类型的键加上联络类型的属性,而关系的键为两端实体转换成的关系形式键的组合。7 试举一个关系的实例,分析关系之间的对应关系并画出完好的E-R图.答:(略)8 视图的集成主要考虑哪些方面.答:视图集成后形成一个整体的数据库概念构造,对该整体概念构造还必需进一步验证,确保它可以满意下列条件: 整体概念构造内部必需具有一样性
31、,即不能存在相互冲突的表达。 整体概念构造能精确地反映原来的每个视图构造,包括属性、实体及实体间的联络。 整体概念构造能满意须要分析阶段所确定的全部要求。整体概念构造最终还应当提交给用户,征求用户和有关人员的意见,进展评审、修改和优化,然后把它确定下来,作为数据库的概念构造,作为进一步设计数据库的根据。9 标准化理论对数据库设计有什么指导意义?答:(参考5.4.3节)10 什么是数据库构造的物理设计?试述其具体步骤。答:对于给定的根本数据模型选取一个最合适应用环境的物理构造的过程,称为物理设计。物理设计分五步完成,前三步涉及到物理构造设计,后两步涉及到约束和具体的程序设计。(1)存储记录构造设
32、计:包括记录的组成、数据项的类型、长度,以及逻辑记录到存储记录的映射。(2)确定数据存放位置:可以把常常同时被访问的数据组合在一起,“记录聚簇”技术能满意这个要求。(3)存取方法的设计:存取途径分为主存取途径及辅存取途径,前者用于主键检索,后者用于协助检索。(4)完好性和平安性考虑:设计者应在完好性、平安性、有效性和效率方面进展分析,作出权衡。(5)程序设计:在逻辑数据库构造确定后,应用程序就应当随之开场。数据物理独立性的目的是消退由于物理构造的变更而引起对应用程序的修改,当物理独立性未得到保证时,可能会发生对程序的修改。习题六1 数据平安的种类及其防范措施。答:在计算机系统中,平安措施一般是
33、逐级进展限制。并且,除采纳软件进展限制外还采纳硬件进展限制。对于非法用户,一般采纳如下的平安机制进展防范。 开机登录。 操作系统登录(如Windows 2000 或windows NT操作系统)。 应用程序登录。2 数据并发限制的优点是什么?采纳的机制是什么,它有什么特点?答:在多用户共享系统中,当多个用户并发地存取数据库时就会产生多个事务同时存取同一数据的状况,即并发操作。DBMS用正确的方式调度并发操作,使一个用户事务的执行不受其他事务的干扰,避开存取和存储不正确的数据,保证数据库数据的一样性。数据库管理系统供应的并发限制机制是封锁。即事务T在对某个数据对象例如表、记录等操作之前,先向系统
34、发出恳求,对其加锁。加锁后事务T就对该数据对象有了肯定的限制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。准确的限制由封锁的类型确定。根本的封锁类型有两种:排它锁(Exclusive Locks 简称X锁)和共享锁(Share Locks 简称S锁)。排它锁又称为写锁。若事务T对数据对象A加X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何锁,直到T释放A上的锁。这就保证了其他事务在T释放A上的锁之前不能再读取和修改A。共享锁又称为读锁。若事务T对数据对象A加S锁,则事务T可以读取A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这就保证了其他事
35、务可以读A,但在T释放A上的S锁之前不能对A做任何修改。3 数据备份的作用是什么,有哪种方式。答:转储是指DBA将整个数据库复制到磁带或另一个磁盘上保存起来的过程。这些备用的数据文本称为后备副本或后援副本。一旦系统发生介质故障,数据库遭到破坏,可以将后备副本重新装入,把数据库复原起来。4 试述SQL Server的平安机制。答:SQL Server的平安性管理是建立在登录认证和访问答应机制上的。登录认证是用于确定SQL Server 的登录账号和密码是否正确。另外,登录认证通过的用户还须要获得访问数据库的权限,才能对数据库进展权限答应范围之内的各种操作,这种权限由用户账号确定。在一个SQL S
36、erver数据库中,用户ID惟一标识一个用户,用户对数据的访问权限以及对数据库对象的全部关系都是通过用户账号来限制。在数据库中,用户账号及登录账号是两个不同的概念。一个合法的登录账号只说明该账号通过了NT 认证或SQL Server 认证,但不能说明他可以对数据库数据和数据对象进展某些操作,所以一个登录账号总是及一个或多个数据库用户账号相对应,这样才可以访问数据库。习题七1. 试述主存储器和协助存储器有何区分。答:主存储器是主存,数据库通常存储在协助存储器上。目前数据库系统运用的协助存储器主要是磁盘存储器和磁带存储器(参考7.1.1节)。2. 试述数据库管理系统的数据字典的内容及主要作用。答:
37、关系数据库管理系统的数据字典存储以下五类信息:及关系形式有关的信息:关系名、属性名、属性数据类型、键属性等。及视图描绘有关的信息。及关系的存储构造和存取方法有关的信息。及完好性约束有关的信息。及平安性有关的信息,即各类用户对数据库的操作权限。数据字典用来存储数据库中存储的数据对象的描绘信息和数据库管理系统须要的限制信息。数据对象的描绘信息包括概念形式、内形式、外形式以及它们之间的映像的描绘。数据库管理系统须要的限制信息包括查询优化、平安性检查、用户权限验证、事务处理、报告生成、约束验证、数据定义和操纵语言编译等系统程序模块所须要的信息。3. 比拟关系代数各种连接算法的优缺点。答:l 修改笛卡儿
38、积的大关系算法来实现连接:磁盘存取块数BR(BS/(M-1)+BS+B(B是R和S的连接结果的块数)l 循环嵌套算法(Nest-Loop Join):磁盘存取块数BRBRBSUl 排序合并算法(Sort-Merge Join):磁盘存取块数O(BR logM BR + BS logM BS +BR +BS +U)假如关系R和S的元组已经在连接属性R.Ai和S.Bj上物理地排序,设R.Ai和S.Bj中至少有一个是键属性,根据排序依次扫描R和S;查找在R.Ai和S.Bj上具有一样值的R和S的元组,进展连接。磁盘存取块数:BRBSU。假如R.Ai和S.Bj都不是键属性,上述算法做一点小的修改。Has
39、h连接算法(Hash Join)第一阶段:扫描R和S,运用定义在连接属性上的Hash函数把R和S的元组分别构造成Hash文件HR和HS。第二阶段:对于HR和HS的每对对应Hash桶,考察其中R和S的元组在连接属性上的值,产生R和S的连接结果。l 索引连接算法:仍旧考虑关系R(A1, ., Ai, ., An)和S(B1, ., Bj, ., Bm)的连接,R.Ai=S.Bj是连接条件。若S在属性Bj上具有聚集索引,索引文件名为IS:设I是S.Bj的连接值域大小,S在连接值域上匀称分布, R.Ai的连接值域是S.Bj的连接值域的子集合 对于R的每个元组,算法平均须要读S的BS/I个数据块,总的须
40、要读取S的TRBS/I个数据块。假如不计索引文件IS的存取数据块数,算法须要存取的数据块数是:BR + (TRBS)/I + U,其中U是连接结果T的数据块数。若R和S都在连接属性上具有聚集索引;设IXR和IXS分别是R和S在R.Ai和S.Bj上的索引文件;IXS中的元素数小于IXR中的元素数。假如不计索引文件的存取数据块数,算法须要存取的数据块数至多是O(I(TR/J + TS/I) + U), 其中,U是连接结果T的数据块数。4. 试述查询优化在关系数据库中的重要性和可能性。答:(参考7.4.1节)5. 对学生课程数据库有如下的查询,以完成查询全部IS学院选修课程名:SELECT CnameFROM Student,Course,SCWHERE Student.Sno=SC.Sno ANDSCo=Courseo ANDStudent.Sdept=IS;试画出用关系代数表示的语法树,并用关系代数