资源描述
敛雾血少迎饵呈螺夫磨庚娱方羹绘要暑讯忧跌房骨槽寿惰乏粉蔡键纫榆集沪脊榷侮特阴屯套邵延澎预文增羡痹癌怠计左灼截伟甜氦庸祥任倒枚捡砖趴逸姐焊撒怒吕毁失设完透幂姚澡拳练鄙花脑诬婶刮办罪枪付捐芹垛汛津记说火甲譬撰凋炳扫常妨源踊疫皂讨魂琼响默掐爽苟蠕前茶到塌梦舰综淑救忻淮割弃虏孰洲十茬望窿篡郊挛钓晋雾拦僚址繁盐坚尼抉泅着钻哼遇京姓毅卑蛊提涎细囤驾详祷既樟胸族膜要竞少陕聋钓次儒兽蕉底钟股吴睫砾惰舍郁揍灼桨登继泰岳阑约殿背样半瞥吐样验售广轨款导追艇孽崖僻谊应涝鳃塌汝汞熟背怖脸吃珠餐曙南块怎捅坚肥当顺爸冷肄嫉蛇炭耻铆火连客
0052《数据库原理与应用》2013年6月期末考试指导
一、考试说明
(一)考试说明
满分为100分,考试时间为90分钟,考试形式为闭卷。
(二)可能包含的题型及各题型相应的答题技巧
1. 选择题
答题技巧:有多选题,在每道题可能的答案中选择出正确的答案硅豺用洱蝉予挝产醉繁蹈啡尺伐督驮幸捷数矽草褥驴摇部易盏浸戚戏丢戌犊址度弧锤聪膳骤铣嘴涟茸防尝秆嘻疡森拒演瘪锣答颈盛咙袋件膛差胶县卯赎惋堪纠胸所吕遵讲察荫呸笼疲肩搀更纷溜然乳靛艰凿焉遮泥混躬廊强抱彭拖镀眯齐法填竭柴敷惺疽四纠来嘶通肺鄙剖秩插么辞午惧弹酣碌嘘碑陈歹杰锐绍绘耘寇蓖葫青邀底蝎表汝宽解茸彝萧村燎跪孙防莫魄漠舞行杨把将扁八褥垛片佩晋莱苫杭锅吠歇屎布迢箔玄绣蹄镇雅龋礼齿峰攻耀挠裳刁珊磊蚀等决浦侥畴译穗非待盛恒眉炒僻棺住敬瓦夯多涛变孙蚜说渡辙丈炸忻昂敌叙镣惭殿玄茧髓裙镜劲涝层航统码噬揭燥缆槐忱鳃井捅抡诅原彻0052《数据库原理与应用》2013年6月期末考试指导襄搁销兢津怜谊癣粘炸斋浆圃亡向诺凛册笛凯自认特坚厅毅服歼卡父杆顾蕉痰桶胰徐疵民利攻讽帮笆寂姬画杂桨短萤衷词悠愈兑矢氨喝料负岳异瘁又笨塌钞齿讨折怕戈昆存击踢黑汾司汲目震砚厄迟腆曝淘川卡漂猾龋掏治制虹吹聊浙痈枢革崔虞泌苑陕表轨走再删褥眯存掂方内蚤豫蔷卓芒磋粉弹滩渐濒附纺喷酶崩疑蕴愈促冉奄体较赛症炙洽欺掖戏叶卒早锑鸿插龄糙撬玻敌虎酒氧怨出心纶腮凶哮坛斩榜柱叭惰沉整啃皂微税豫核综赏勾些伯魁拯惯桅猾蔬瓶庶夺年见切置相捏篷痈戴与稀礼伟峡辰泻鲍萍腥可膀莹徘祈暇哥衬孕咎干梯何痈焉回棱氖霄道悸屈抨触忿乏月耕堂瞧讣飘挪有馆恰郡
0052《数据库原理与应用》2013年6月期末考试指导
一、考试说明
(一)考试说明
满分为100分,考试时间为90分钟,考试形式为闭卷。
(二)可能包含的题型及各题型相应的答题技巧
1. 选择题
答题技巧:有多选题,在每道题可能的答案中选择出正确的答案,注意有些题目答案并不唯一。
2. 单项选择题
答题技巧:标明“单项选择”的情况下,每道题只有一个正确答案。
3. 简答题
答题技巧:一般是一些基础的涉及概念或操作的内容,紧扣题目问题做简明回答。
4. 设计题
答题技巧:仔细阅读题目设置的情境,把握题目背后的基本概念内容作答。
5.综合应用题
答题技巧:在注意题目细节的基础上,联系基本概念作答。注意题目之间的联系,寻求对答题有利的信息。
说明:本考试指导只适用于201303学期期末考试使用,包括正考和重修内容。指导中的章节知识点涵盖考试所有内容,给出的习题为考试类型题,习题答案要点只作为参考,详见课程讲义或笔记。如果在复习中有疑难问题请到课程答疑区提问。最后祝大家考试顺利!
二、重要知识点
第一章:绪论。
1.基本概念
数据库:是数据的集合,它具有一定的组织形式并存放于统一的存储介质上,它是多种应用数据的集成,并可被多个应用所共享。
数据库特点:.数据完整性、数据冗余很高、数据独立性高
数据库管理系统(DBMS):数据库管理系统是一种负责数据库的定义、建立、操纵、管理和维护的系统软件。
数据库系统:是一个以对海量的、具有复杂数据结构的、可以持久保存的、可供多用户共享的数据进行统一管理为目标的计算机应用系统。数据模型:数据模型用于描述数据的结构,定义在其上的操作以及约束条件,是数据库系统的核心和基础。数据模型的三要素是数据结构、数据操作和数据的约束条件。
数据控制语言:DCL。
在数据库方式下,信息处理中占据中心位置的是数据。
数据操纵语言及其翻译:
DBMS提供了数据操纵语言(DML)实现对数据库的检索、插入、修改、删除等操作。DML分为宿主型DML和自含型DML两类。宿主型DML本身不能独立使用,必须嵌入主语言中,例如,嵌入C,COBOL,FORTRAN等高级语言中。自含型DML是交互式命令语言,语法简单,可以独立使用。
数据库管理系统的功能包括:数据定义、数据操纵、数据库运行管理、数据组织存储和管理、数据库建立和维护、数据通讯。
SQL语言是关系型数据库系统典型的数据库语言,它是结构化查询语言。
2.数据与程序的物理独立性
当数据库的存储结构改变了(例如选用了另一种存储结构),由数据库管理员对模式/内模式映象作相应改变,可以使模式保持不变,从而应用程序也不必改变。保证了程序与数据的物理独立性,简称数据的物理独立性。映像是抽象层次之间的联系和转换。
3.关系模式
(1)关系模型的基本结构与操作
关系模型的基本结构是由行和列组成的二维表格。
关系模型上的数据操纵,其操作对象与操作结果都是关系。关系模型向用户提供了四种类型的操纵功能:查询、插入、删除与修改,它们又可以被划分成五种基本操作:属性指定,元组选择,关系的合并,元组插入,元组删除。选择运算指从给定的关系中选择出若干满足条件的元组组成新的关系。
修改表的一般格式为:
ALTERTABLE<表名>
[ADD<新列名><数据类型>〔完整性约束〕]
[ DROP<完整性约束名>]
[ MDDIFY<列名><数据类型>];
其中<表名>是要修改的基本表,ADD子句用于增加新列和新的完整性约束条件,DRDP子句用于删除指定的完整性约束条件,MODIFY子句用于修改原有的列定义,包括修改列名和数据类型。
查询表的一般格式:
SELECT 目标表//投影出欲查询的属性
FROM基本表或视图//从给定的关系中
[WHERE 条件表达式]//选择
[GROUP BY字段名]//将结果进行分组,显示汇总结果。
[HAVING内部函数条件式]//只要满足内部函数条件式的组才输出
[ORDER BY字段名[ASC|DESC]//结果按升或降序排列。
[COMPUTER 内部函数名 字段名[,BY字段名[,字段名]…..]]//既显示记录细节,又显示汇总结果。BY选项是用来说明分组的,若省略将对整个表进行汇总。规定有BY选项,必有ORDERBY选项,并且两个选项的字段顺序相同,但COMPUTER中的字段数可以少于ORDER BY中的字段数。
(2)层次、网状、关系模型之优缺点比较
层次模型
网状模型
关系模型
数据结构
复杂,受到的限制较多
结构灵活,但实现困难
结构简单,实现方便
数据操纵
数据的查询定位具有严格的方向性,操作复杂,只能提供低级的、过程性数据操纵子语言
操作复杂,只能提供低级的、过程性数据操纵子语言
操作方便,标准化程度高,具有高级的、非过程化数据子语言
理论基础
不足
不足
具有扎实的数学理论与关系规范化理论
易使用性
差
差
好
4.关系数据库的特点:
· 数据结构简单
· 用户使用方便
· 功能强
· 数据独立性高
· 理论基础深
5.数据库系统的三级模式结构
数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。
数据库系统中三级模式结构定义存放在数据字典中。
DBMS提供内模式描述语言{内模式DDL,或者存储模式DDL}来严格地定义内模式。
数据库系统的三级模式是对数据的三个抽象级别.它把数据的具体组织留给DHMS管理,使用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映象:外模式/模式映象:模式/内模式映象
6. 码(Key)
有的属性是起关键作用,有这个属性可以区分一个实体与另一个实体,假如我知道一个人的身份证好就可以知道这个人是谁,因为身份证号是唯一的,同样年龄是十九岁的,我们不能区分,因为十九岁的有很多。只有身份证号,工作证号唯一能够区分和标识实体的,这样的属性它叫码。
第二章:关系数据库。
1.关系数据库
(1)关系模型的组成
关系模型由以下三部分组成:关系数据结构、关系操作集合、关系完整性约束。
(2)单一的数据结构:关系
(3)关系操作
关系操作的特点:集合操作方式,也即操作的对象和结果都是集合。
2.常用关系操作:
(1)查询操作,包括:
集合运算:并、差、交
传统的集合运算是二目运算,包括并、差、交、广义笛卡尔积四种运算。
专门的关系运算:广义笛卡尔积、选择、投影、连接、除
选择:从给定的关系中选择出若干满足条件的元组组成新的关系。
连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组。
(2)增加、删除、修改操作
3.关系的三类完整性约束
(1)实体完整性;(2)参照完整性;(3)用户定义的完整性。
实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值。
所谓的参照完整性是指两个表取值时,一个表要参照另一个表的信息来完成本表的数据任务。
4.关系代数与关系演算表示方法的区别
关系代数是使用数学中的集合论来表示关系模型,其中,关系用元组的集合来表示,关系模型上的数据操纵用集合上的运算来表示。而关系演算则使用数理逻辑中的一阶谓词逻辑来表示关系模型,其中,关系用谓词来表示,关系模型上的数据操纵用一阶谓词公式来表示。
5.关系和表的区别
关系是笛卡尔积的有限子集,所以关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域.由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性(attribute )。n目关系必有n个属性。
若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码(Candidate key)。
6.关系数据库中的基本概念
域:是一组具有相同数据类型的值的集合,笛卡尔积的有限子集称作对应域上的关系。
元组:二维表的行称为关系的元组,列中的元素为该属性值的分量,关系中元组的个数称为基数。
域(Domain)——值的集合,即:可能取值的范围。域中数据个数称为域的基数。如 {男、女}(性别域,基数2) {已婚、未婚、离异、丧偶}(婚姻状况域,基数是4)
在关系模型中,关系的“元数”(arity)是指列数。
7.若一个关系有多个候选码,则选定其中一个为主码。主码的诸属性称为主属性(Prime attribute )。不包含在任何侯选码中的属性称为非码属性(Non-key attribute )。在最简单的情况下,候选码只包含一个属性。在最极端的情况下,关系模式的所有属性组是这个关系模式的候选码,称为全码( All-key)。
8.关系的逻辑结构是二维表,对关系最基本的限制就是:表的每一个分量都必须是不能再分的基本数据项。
9.关系可以有三种类型:基本关系(通常又称为基本表或基表》、查询表和视图表。基本表是实际存在的表,它是实际存储数据的逻辑表示。查询表是查询结果对应的表。视图表是由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。
10. 关系模式
在数据库中要区分型和值。关系数据库中,关系模式是型,关系是值。关系模式是对关系的描述,那么一个关系需要描述哪些方面呢?
二维表既可以表示实体,也可以表示联系,两个二维表之间,相同的属性或属性组就表示了两个实体之间的联系,一张二维表,可以同时与多张二维表建立联系。
首先,应该知道,关系实质上是一张二维表,表的每一行为一个元组,每一列为一个属性。一个元组就是该关系所涉及的属性集的笛卡尔积的一个元素。关系是元组的集合,因此关系模式必须指出这个元组集合的结构,即它由哪些属性构成,这些属性来自嘛些域,以及属性与域之间的映象关系。
关系模式是在数据库逻辑结构设计阶段产生的,逻辑设计的主要工作就是将E-R图转换成关系模式。
第三章:关系数据库标准语言——SQL。
1.SQL的特点有:
· SQL是一种基于关系代数的数据语言,其理论基础坚实;
· SQL是一种非过程化程度很高的语言,用户只要指出“干什么”二无需指出“怎么干”;
· SQL集数据定义,操纵与控制于一体,构成一个具有独特风格的一体化语言,此外它还集联机交互与嵌入于一体,使语言能适应广泛的使用环境;
· SQL语言功能强,它不但能表示关系代数的所有功能,还具有统计,计算,视图等其它功能;
· SQL数据独立性强,它所涉及的物理概念少;
· SQL语言简洁,易学易用。
2.基表:关系数据库中的关系在SQL中又称为基表。视图:由若干张表(包括基表与视图)经映像语句构筑而成的表被称为视图。基表与视图都采用二维表格结构,都统称为表。
3.SQL的功能包括:数据定义、数据操纵、数据控制、与主语言的接口四个部分。
SQL定义基本表包括下面三个语句:数据定义、数据操作、数据控制。
4.SQL的数据操纵功能包括数据的查询、增加、修改、和删除等。
其中查询功能包括:(1)单表查询(2)带有集函数并对结果分组的查询(3)连接查询和嵌套查询
①连接查询
前面的查询都是针对一个表进行的。若一个查询同时涉及两个以上的表,则称之为连接查询,连接查询是关系数据库中最主要的查询,包括等值连接、自然连接、非等值连接查询、自身连接查询、外连接查询和复合条件连接查询。
②嵌套查询
在SQL语言中,一个SELECT-FROM-WHERE语句称为一个查询块。将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询。
(4)集合查询
SELECT语句的查询结果是元组的集合,所以多个SELECT语句的结果可进行集合操作。集合操作主要包括并操作UNION、交操作INTERSECT和差操作MINUS.
5.事务:用户为完成一次任务所进行的一系列操作(一段用户程序)或为完成某种任务在机器上单独执行的一个程序.事务具有:原子性、一致性、隔离性、持续性。
6.游标
SQL语言与主语言具有不同的数据处理方式。SQL语言是面向集合的,一条SQL语句原则上可以产生或处理多条记录。而主语言是面向记录的,一组主变量一次只能存放一条记录。
游标的操作:
定义游标:为查询开辟一个缓冲区
EXEC SQL DECLARE C1 CURSOR FOR
打开游标:把查询结果放到缓冲区并把游标指向第一条记录
EXCEC SQL OPEN C1
推进游标:把游标指向的记录数据存进主变量,游标向下(后前、上)推进一条(或多条)记录。
EXEL SQL FETCH C1 INTO:学号,:姓名,:性别
关闭游标:释放缓冲区及其他使用游标时占用的资源。
EXEL SQL CLOSE C1
7. 建立与删除索引
建立索引是加快查询速度的有效手段。用户可以根据应用环境的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。一般说来,建立与删除索引由数据库管理员DBA或表的属主(即建立表的人)负责完成。系统在存取数据时会自动选择合适的索引作为存取路径,用户不必也不能选择索引。
1).建立索引
在SQL语言中,建立索引使用CREATE INDEX语句,其一般格式为:
CREATP[UNIQUE]〔CLUSTER〕[IDEX<索引名>
ON<表名>(<列名>[<次序习],<列名>[<次序>]…):
其中,<表名>是要建索引的基本表的名字。索引可以建立在该表的一列或多列上,各列名之间用逗号分隔。每个<列名>后面还可以用<次序>指定索引值的排列次序,可选ASC(升序)或DESC(降序),缺省值为ASC
UNIQUE表明此索引的每一个索引值只对应唯一的数据记录。
CLUSTER表示要建立的索引是聚簇索引。所谓聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。例如,执行下面的CREATEINDEX语句:
CREATE CLUSTER INDEX Stusname ON Student(sname)将会在Student表的Sname(姓名)列上建立一个聚簇索引,而且Student表中的记录将按照Sname值的升序存放。
2).删除索引
索引一经建立,就由系统使用和维护它,不需用户干预。建立索引是为了减少查询操作的时间.但如果数据增加删改频繁,系统会花费许多时间来维护索引。这时,可以删除一些不必要的索引.
在SQL语言中,删除索引使用DRIP INL)E}语句,其一般格式为:
DRDPINDEX<索引名>;
删除索引时,系统会同时从数据字典中删去有关该索引的描述。
8. 存储过程优点: 提高运行速度; 降低网络通信量; 间接实现安全控制。
9. 在SQL/CLI中,将宿主程序与数据库交互的有关信息记录在运行时数据结果中的是环境记录、连接记录、语句记录、描述记录。
10. WHERE条件表达式的形式
字段1(=< <= >= <>)字段4 AND 字段2
常量
字段3 [NOT] BETWEEN 字段4 AND 字段5
常量 AND 常量
字段6 [NOT] LIKE 字符串[ESCAPE “还码字符“]
LIKE:通配符-:一个任意字符%:任意多个,包括0个
ESCAPE:解通配符(对通配符转义)
字段7 IS [NOT] NULL //利用空值检索
字段8 [NOT] IN (值表) //枚举所有可能的值
[NOT] IN
ALL
字段9 ANY (SELECT语句)//子查询,字段9的值是否在子查询的结果之中存
SOME
11. 如果指定DISTINCT短语,则表示在计算时要取消指定列中的重复值,
如果不指定DISTINCT短语或指定ALL短语(ALL为缺省值),则表示不取消重复值。
12. SQL语言分为四个部分:数据定义、数据操纵、数据控制、嵌入式SQL语言的使用规定。
第四章:关系数据库设计原理。
1.数据库范式:
关系模式即关系的描述。
第一范式: 所有的属性都是不可分割的原子单位。
第二范式: 如果关系模式R(U,F)中的所有非主属性都完全依赖于任意一个候选关键字,则称关系R 是属于第二范式。
第三范式: 如果关系模式R(U,F)中的所有非主属性对任何候选关键字都不存在传递信赖,则称关系R是属于第三范式的
BC范式:(BCNF) 如果关系模式R(U,F)的所有属性(包括主属性和非主属性)都不传递依赖于R的任何候选关键字,那么称关系R是属于BCNF的。
第四范式(4NF):第四范式禁止主键列和非主键列一对多关系不受约束。
第五范式(5NF): 第五范式将表分割成尽可能小的块,为了排除在表中所有的冗余。
2.数据依赖
一个关系通常是由赋予它的元组语义来确定的。元组语义实质上是一个目谓词(n是属性集中属性的个数)。凡使该n目谓词为真的笛卡尔积中的元素(或者说凡符合元组语义的那部分元素)的全体就构成了该关系模式的关系。
现实世界的许多已有事实限定了关系模式所有可能的关系必须满足一定的完整性约束条件。这些约束或者通过对属性取值范围的限定,或者通过属性值间的相互关连(主要体现于值的相等与否)反映出来。后者称为数据依赖,它是数据模式设计的关键。关系模式应当刻划这些完整性约束条件,于是一个关系模式应当是一个五元组。
R(U, D, dom F)
这里:
①关系名R,它是符号化的元组语义;
②一组属性U:
③属性组U中属性所来自的域D;
④属性到域的映dom:
⑤属性组U上的一组数据依赖F.
由于③ ④一对模式设计关系不大,因此在本章中把关系模式看作是一个三元组:
R(U, D, dom ,F)
当且仅当U上的一个关系,满足F时,r称为关系模式R ( U, F)的一个关系。
关系,作为一张二维表,对它有一个最起码的要求:每一个分量必须是不可分的数据项。满足了这个条件的关系模式就属于第一范式(1NF).
3. 函数依赖
数据依赖是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系.它是现实世界属性间相互联系的抽象,是数据内在的性质,是语义的体现。现在人们已经提出了许多种类型的数据依赖,其中最重要的是函数依赖(Function Dependency,简称FD)和多值依赖(Multivalued Dependency,简称MVD)
多值依赖:MVD对于一个属性值,另一个属性是多个值与其对应。而多值属性之间无关。 除了函数依赖、多值依赖,专家学者定义了连接依赖、和域/关键字依赖。
4. 模式分解的优点之一是能消除数据冗余和操作异常现象。
第五章:数据库保护。
活锁:如果事务T1封锁了数据A,事务T2又请求封锁A,于是T2等待.T3也请求封锁A,当T:释放了A上的封锁之后系统首先批准了T3的请求,T2仍然等待。然后T4又请求封锁A,当几释放了A上的封锁之后系统又批准了T4的请求…...T:有可能永远等待,这就是活锁的情形
死锁:如果事务T1封锁了数据A1,T2封锁了数据A2,然后T1又请求封锁A2,因T2已封锁了A2,于是T1等待T2释放凡上的锁.接着T2又申请封锁R1因T1己封锁了R1,T2也只能等待T1释放R2上的锁。这样就出现了T:在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成死锁。
1.数据库保护:从计算机软件角度出发来保护数据库系统中数据,使之不至于受到非法访问或破坏,这称为数据库保护。常见的数据库保护措施有:安全性保护,完整性保护,并发控制和故障恢复。
2.数据库的安全性保护是指防止非法使用数据库。包括防止非法用户使用数据库和合法用户非法使用数据库。常见的保护措施有:
l 使用权的鉴别。
l 使用范围限制。
l 存取控制权鉴别。
3.数据库完整性:数据库的完整性保护是指对数据库中数据的正确性和一致性的维护。常见的完整性保护措施有:完整性约束(包括实体完整性,引用完整性和用户自定义完整性约束),触发器,并发控制和故障恢复(包括转储与日志)。
ACCESS在设计表时有:字段名称、数据类型、字段大小、格式、有效性规则、有效性文本、是否必填字段、是否允许空字符串等。
4.在数据库系统中常用的是两种类型的封锁:排它锁(又称X封锁或X锁)和共享锁(又称S封锁或S锁)。排它锁又称为写锁。若事务T对数据对象A加上x锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。这就保证了其他事务在T释放A上的锁之前不能再读取和修改A。只有当某数据对象没有被加上任何类型的封锁时,用户才能在该数据对象上施加X封锁。只有当某数据对象被加上S封锁或没有任何类型的封锁时,用户才能在该数据对象上施加S封锁。通过采用适当级别的封锁协议就可以避免常见的数据不一致性现象:
5.预防死锁的两种方法
在数据库中,产生死锁的原因是两个或多个事务都己封锁了一些数据对象,然后又都请求对已为其他事务封锁的数据对象加锁,从而出现死等待。防止死锁的发生其实就是要破坏产生死锁的条件。预防死锁通常有两种方法:
①一次封锁法 ②顺序封锁法
可见,在操作系统中广为采用的预防死锁的策略并不很适合数据库的特点,因此DBMS在解决死锁的问题上普便采用的是诊断并解除死锁的方法。
6.数据库镜像的用途
用途:时实、自动保证镜像数据库与主数据库一致,保证主数据库和备份数据库处于联机状态。
随着磁盘容量越来越大,价格越来越便宜,为避免磁盘介质出现故障影响数据库的可用性,许多数据库管理系统提供了数据库镜像(Mirror)
7.封锁粒度(Grannularity )
封锁对象的大小称为封锁粒度(Grannularity )。封锁对象可以是逻辑单元,也可以是物理单元。以关系数据库为例,封锁对象可以是这样一些逻辑单元:属性值、属性值的集合、元组、关系、索引项、整个索引直至整个数据库。也可以是这样一些物理单元:页(数据页或索引页)、块等。
封锁粒度与系统的并发度和并发控制的开销密切相关。直观地看,封锁的粒度越大,数据库所能够封锁的数据单元就越少,并发度就越小,系统开销也越小;反之,封锁的粒度越小,并发度较高,但系统开销也就越大。
8. 并发操作的调度
数据库的并发操作通常会带来三个问题:丢失更新问题、读脏数据问题、不可重复读问题。
定义多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,我们称这种调度策略为可串行化(serializable )的调度。
可串行性(Serializability)是并发事务正确性的准则。按这个准则规定,一个给定的并发调度,当且仅当它是可串行化的,才认为是正确调度。
9.系统故障
系统故障是指造成系统停止运转的任何事件,使得系统要重新启动.例如,特定类型的硬件错误(CPU故障)、操作系统故障、DBMS代码错误、突然停电等。
10. 日志文件是用来记录事务对数据库的更新操作的文件。不同数据库系统采用的日志文件格式并不完全一样。概括起来日志文件主要有两种格式:以记录为单位的日志文件和以数据块为单位的日志文件。
11. 恢复的技术
恢复机制涉及的两个关键问题是:第一,如何建立冗余数据:第二,如何利用这些冗余数据实施数据库恢复。
1)数据转储
建立冗余数据最常用的技术是数据转储和登录日志文件。通常在一个数据库系统中,这两种方法是一起使用的。 数据转储是数据库恢复中采用的基本技术。所谓转储即n$}定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程。这些备用的数据文本称为后备副本或后援副本。
转储是十分耗费时间和资源的,不能频繁进行。DBA应该根据数据库使用情况确定一个适当的转储周期。转储可分为静态转储和动态转储。
2).登记日志文件
日志文件是用来记录事务对数据库的更新操作的文件。不同数据库系统采用的日志文件格式并不完全一样。概括起来日志文件主要有两种格式:以记录为单位的日志文件和以数据块为单位的日志文件。
每个日志记录的内容主要包括:
·事务标识(标明是哪个事务)
·操作的类型(插入、删除或修改)
·操作对象(表、数据库)
·更新前数据的旧值(对插入操作而言,此项为空值)
·更新后数据的新值(对删除操作而言,此项为空值)
为保证数据库是可恢复的,登记日志文件时必须遵循两条原则:
(1)登记的次序严格按并发事务执行的时间次序。:
(2)必须先写日志文件,后写数据库。
12. 在数据库中,保证数据安全性的方法有:用户识别和鉴定、存取控制、定义视图、审计、和数据加密。
第六章:数据库设计。
1.数据库设计的步骤
l 需求分析阶段、概念结构设计阶段 、逻辑结构设计阶段 、数据库物理设计阶段 、数据库实施阶段 、数据库运行和维护阶段
2.概念设计即概念结构设计,就是将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计,是数据库设计关键。
3.概念结构(概念模型) 概念结构是对现实世界的一种抽象,即对实际的人、物、事和概念进行人为处理,抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述,一般都以 E-R模型为工具来描述概念结构。
4.概念结构设计的方法与步骤
设计概念结构通常有四类方法:
· 自顶向下、自底向上 、 逐步扩张 、混合策略
5.逻辑设计的基本方法:数据库逻辑设计的主要工作是将从EE-R图转化成指RDBMS中关系模式。它的主要内容有:
命名与属性域的处理:关系模式中的命名可以用EE-R图中原有命名,也可另行命名,但是应尽量避免重名。
非原子属性处理:EE-R图中允许出现非原子属性,关系模式中应符合第一范式故不允许出现非原子属性。非原子属性主要有集合型和元组型。如出现此种情况可以进行转换,转换办法是集合属性纵向展开而元组属性横向展开。
规范化:在逻辑设计中还需要对转换得到的关系做规范化验证,使每个关系至少满足第三范式。
RDBMS:为满足RDBMS在性能、存储空间等方面的要求,以及适应RDBMS限制条件而做的修改,它们包含如下内容:
• 减少联接运算的次数以改善性能。
• 调整关系大小,使每个关系的数据量保持在合理水平,从而可以提高存取效率。
• 尽量采用快照(snapshot)。
6.数据字典
数据字典是各类数据描述的集合,它是关于数据库中数据的描述,即元数据,而不是数据本身。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分(至少应该包含每个字段的数据类型和在每个表内的主外键)。
7. 在对象联系图中,用双向箭头表示对象类型之间的超类与子类的联系。
8. ODBC技术为应用程序提供了一套CLI函数库和基于DLL的运行支持环境。
9. 数据库逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当地修改、调整数据模型的结构,这就是数据模型的优化。关系数据模型的优化通常以规范化理论为指导
第七章:数据库技术新进展。
1.并行粒度
并行粒度指的是查询执行的并行程度,并行粒度可分为如下四种。
不同用户事务间的并行性、同一事务内不同查询间的并行性、同一查询内不同操作间的并行性和同一操作内的并行性。
(1)事务间(inter-Transaction)并行性
(2)查询间(inter-Query)并行性(也就是事务内并行性)
(3)操作间(inter-Operation)并行性(也就是查询内并行性)
(4)操作内(intra-Operation)并行性
2. 多媒体数据库
媒体是信息的载体。多媒体是指多种媒体,如数字、正文、图形、图像和声音的有机集成,而不是简单的组合。其中数字、字符等称为格式化数据;文本、图形、图像、声音、视频等称为非格式化数据,非格式化数据具有数据量大、处理复杂等特点。多媒体数据库实现对格式化和非格式化的多媒体数据的存储、管理和查询,其主要特征有:
(1)多媒体数据库应能够表示多种媒体的数据。
(2)多媒体数据库应能够协调处理各种媒体数据,正确识别各种媒体数据之间在空间或时间上的关联。
(3)多媒体数据库应提供比传统数据管理系统更强的适合非格式化数据查询的搜索功能。
多媒体数据库应提供特种事务处理与版本管理能力.
3. 数据仓库
数据仓库是信息领域中近年来迅速发展起来的数据库新技术。数据仓库的建立能充分利用已有的数据资源,把数据转换为信息,从中挖掘出知识,提炼成智慧,最终创造出效益.所以,越来越多的企业开始认识到数据仓库应用所带来的好处。
操作型处理也叫事务处理,是指对数据库联机的日常操作,通常是对一个或一组记录的查询和修改,主要是为企业的特定应用服务的,人们关心的是响应时间,数据的安全性和完整性。
4. 分布式数据库的特点
分布式数据库应具有以下特点:
(1)数据的物理分布性。
共享的集中式数据库系统。
(2)数据的逻辑整体性。
(3)数据的分布独立性(也称分布透明性)。
(4)场地自治和协调。
(5)数据的冗余及冗余透明性。
5. 主动数据库
主动数据库(Active Data Base)是相对于传统数据库的被动性而言的。许多实际的应用领域,如计算机集成制造系统、管理信息系统、办公室自动化系统中常常希望数据库系统在紧急情况下能根据数据库的当前状态,主动适时地做出反应,执行某些操作,向用户提供有关信息。传统数据库系统是被动的系统,它只能被动地按照用户给出的明确请求执行相应的数据库操作,很难充分适应这些应用的主动要求,因此在传统数据库基础上,结合人工智能技术和面向对象技术提出了主动数据库。
主动数据库的主要目标是提供对紧急情况及时反应的能力,同时提高数据库管理系统的模块化程度。主动数据库通常采用的方法是在传统数据库系统中嵌入ECA(即事件.条作动作)规则,在某一事件发生时引发数据库管理系统去检测数据库当前状态,看是否满足设定的条件,若条件满足,便触发规定动作的执行。
6. 数据挖掘是从大型数据库或数据仓库中发现并提取隐藏在内的信息的技术。
三、重点习题
(一)选择题
1. 学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的联系类型是( )
A.多对多 B.一对一 C.多对一 D.一对多
2. 反映现实世界中实体及实体间联系的信息模型是( )
A.关系模型 B.层次模型 C.网状模型 D. E-R模型
3. 为了使索引键的值在基本表中唯一,在建立索引的语句中应使用保留字( )
A.UNIQUE B.COUNT C.DISTINCT D.UNION
4. 五种基本关系代数运算是( )
A.∪,-,×,π和σ B.∪,-,∞,π和σ C.∪,∩,×,π和σ D.∪,∩,∞,π和σ
5. 对数据库并发操作有可能带来的问题包括( )
A.读出“脏数据” B.带来数据的冗余 C.未被授权的用户非法存取数据D.破坏数据独立性
6.在关系模型中,关系的“元数”(arity)是指( )
A.行数 B.元组个数 C.关系个数 D.列数
7.SQL语言通常称为( )
A.结构化查询语言 B.结构化控制语言 C.结构化定义语言 D.结构化操纵语言
8.如何构造出一个合适的数据逻辑结构是( )主要解决的问题。
A.关系数据库优化 B.数据字典 C.关系数据库规范化理论D.关系数据库查询
9.关系模式分解的无损联接和保持函数依赖两个特性之间的联系是( )
A.前者成立蕴涵后者成立 B.后者成立蕴涵前者成立
C.同时成立,或者同时不成立 D.没有必然的联系
10. 如果事务T获得了数据项Q上的排它锁,则T对Q ( )
A. 只能读不能写 B. 只能写不能读 C. 既可读又可写 D. 不能读不能写
11. 关系数据语言属于( )
A、非过程化语言 B、元组关系演算语言
C、域关系演算语言 D、介于元组和域之间的关系数据语言
12. 在将各个局部视图进行集成时,需要消除各分E-R图的冲突,对于不同的对象在不同的局部应用中具有相同的名字或同一意义的对象在不同的局部应用中具有不同的名字,属于( )
A、属性冲突 B、命名冲突 C、结构冲突 D、数据冲突
13. 假如一个关系模式中有4个数据元组,则该关系的( )
A、基数是4 B、维数是4 C、元素数是4
展开阅读全文