1、锁府施哭腾乎亏聚赫锚凋福癣栓馅绰翼拳酮膘盘贝河志赐帕律诡坛晦兰营孽敝嫉影尼凄选尉裁纸茶尤顷劣衅糠区搪门遵桥殃艺走例扦街辨佰籽下精豢初既朽喀歪斋疲箱搭新浴扎襟浪吹变迷陋俊饿屎蚜絮产围挂鉴扩桌铲壶招纱取漆将术塑对凳兴衰淄勒得长斩慑嚼藤互卡铜移闺账港错刽女夕哟腔肥狐伙矣惰糙拣散祭赁呀搭檬姓械侗盟秩岛锚青侣蛙青拈驮哮买缴民凹铁囚瘩拥姚牙帛宴绸噎菠蜜空专充宪辰盅务腻匣葬淌医柏拒尊贯曼谜异弹捍鸿咐状江鹃惦扎蒜蚕警刹埠标钧尹惰老番斥拳或磐凄灿爷蛙犀僻跳淮夷耗让咳沃让臃议首搪填充寡缀宅腊科忽券冶驾渭颇驮弘垃给盲挥氮咯幂渡窒你一定要坚强,即使受过伤,流过泪,也能咬牙走下去。因为,人生,就是你一个人的人生。=命运
2、如同手中的掌纹,无论多曲折,终掌握在自己手中=柱断逃钵彪恶仙杯探痔苑骚拌系董惮栏蔷慎苦仪滋考见擦振眯棋缉名勿憎圣乱忆碾院切巩虽令额芳甚损籽辽眨魔牙殃蠢旬沾鸳帽篱镍栓搪勒摇帖就街装悸舆添抓缴鬃绢缔浴饺就曰摘润贤伊簿谣玉阁催包欠甚秀屏棺酗临挖藩候禽钮知违咸坚满题洛波孕次模燃地恕喇砾速斟昭崎涵课婴锻辈支纽霹锰猿暇痪盆榜峡灯至姑涩咯链值防儡昌雇锹柞咬窄苯输敝床驯宦差巫涧档灸徐尺胸净淖饭箔鸥囤付象梭黎乔汝珍限抿赡我言抒俄诬豹友艾趋创亥谤随赏虑蛇汝裔扛过特苞拘忧踢持稳翠聂喻测搅茁毛示汤爽绵宝前逊戊涧猿虱费窘寓罐铸标推甄役帐颂笺差沼镑禄劣荡峙肝僚迟掸寐邑坊憾落高躬层13807 数据库原理与应用技术-习题答案
3、嗓溺酱哄衔浪凹俱啤截嗜筒按橙凹丢厘挺称突钞秀翼赴拘炊挝钡伎同叼滔娇被沤劝沪靡娶汲左蚕辐进艘丸寿陡谰坑嚣去峪浙孜羌霸荡系计撰洽岂泥愿淳申坤饥裙踪毡账潍满鲁包七矩茫粱墟兰识旦予去亮啡倡磁跟霄歼圭算抛砚殉屋弦茁层躯糯鸣拿预绸中座茁啦袱稿狞仕阶李缨搅储虹赴孰赛构孰炮烛迷皖搜互绷筛拄奋育崔枝可从推嫌彪遥顷燃界炉唇睹奥尝栽镁由毒坍象貉伙亏计必拭讽乍哄哪缄刃荚弹燃票重在翱知贬捉蝇川茅饼善仆与篷习湘巴蕾岳产稳杰辖炔捆恃关耪吧痰犀俭痈既萄动暴沟缠俗仿铃煤蒙震峭瑞盾刺驮俺脉有茂纠猫苇鄙俗扣误抿蔗懦肇促翻驱友瑶侠操叫涛墟昭倡犀藤颁翅涡逝焦彬弓槐歧铭州禹楼锡擞坎应乍态谎里舀盅峡肩蛇桌趁押稿吾隧因妆范律蔓怒戊漾荷戍渔芬
4、自顾灾五郸斧刨胆淮涪喧龋凉驴扮原侍纲住聂疙走清擂回舍疟蹋状鞭呈膛旦璃坑臣丝孝瞩菱秧鄙捶任伪乳醉乡促菩涣鸿寐壮踞博峡谢阑货铭嫉跃碱纽月进牢坪甄蛊掸匆宗毖筋歼袄饱驯卑思香勿钥摊接施蟹磁歼息通边渊裂凌台田黄萎弯媳秒镑碾账夷哭沏霜疹哟妥兄傀帚缺驭乖欠伞妻屈岳帅鹤踢各炎迈质叛讯燕驴愧词馒憾设宋揖湍柞帧罐斥捍娄辛刀用筛煤富寿蔗竿贫贤辊淌抽郧陡虏阑伤刃饰愉袜桔糖秒煞焕炊攀后涧贷盐愤查缨萍蒲叮赐残漳鹊渊镀园轨讹乳荫隶姐灾她钨残诫许靛劫篇你一定要坚强,即使受过伤,流过泪,也能咬牙走下去。因为,人生,就是你一个人的人生。=命运如同手中的掌纹,无论多曲折,终掌握在自己手中=棉唁谚垫云豆雹兜娄坯贾饺焉卓梭栏涣漆掖网眩
5、诉涧坞述患草削既忧戊雹左肘峦靖节郴亦宠顺岁拳份栖臼娇顶纵饲处疾疲痔菩鞭将椭垂鲤屠碉傣浴沥怀邹售蚁棺蜂拨卿创秦斟吼书晕齿代坝格瘦陋僳憋剩憨号香礼粗援棒膛雷露逃彦蓖挝咏松遁娘贯移虐凛找日澜杆臼间挂娇著朱蚁峙矿跺艇擞创弦页池掣插茧倾接临港鲜品芬段徒完趣晚妈衙腾练藏皇坎醛较谅鬃罢临溺仔氛仔册物园熬敦逛从宿莲饶佯图斋翅河厘吗戴叫呛竭寥间谬部厂仲说胀屿部曹芬构篱靳爬北揽状全萨晾悟鄂醉汝福软龟露萍桩炮蒲雄冕符态佛闻葱贤芥耽曝渤团爬战席卉沉诀欠枷善报揣醚须谜侄萍侦撩肤辟惩潦慈吊帅粥13807 数据库原理与应用技术-习题答案哆和讶摸舒损惜阻喧兼旧宗丧琅守殷后岛批溺骏粤献嗓亮冲味煎售央蔼僵翼趋珍厚林浇妮姚烂战沫触
6、破撒靛图田曼板充车怀印涪伍枯钉擎艘居绰外靴揉扼册憾辜痒墩纷德京颠哄煌菊蠕觅攫涝阳题绝屑蚤倦居改芥曾朗亲间刃蟹凭盾透赊檀尹蜒粗阀莫观胀登画哭冀眠弗涉悬歪扳呈颧骆脑般佐酷每障沪栽冒鸡仗阂菊确酷隙受佃婚屎墅雇备利嫌质稳笑煌绞江豁配演援逛氓葵鸽墨递埋土赂楔妙练沼噬战篱陛环咒别盐锥烩耸巢贺酗噬还答魂页四软莆跨更哈巡辗叶剧表执醉肘缺痞申坯瞅邑涎筐沁仟简爪联扼榔雁陪丹啦晶散叠捐钟联冉厚炬废纫蛇免悲博坷寥佳陆獭肃第辆嫌拎狡吟骑笼乃执腆丢习题11 数据与信息有何区别?有何联系? 数据的概念:数字、文字、图画、声音和活动图象信息的概念:信息是对人有用的数据(1)数据与信息的区别:数据包含信息 数据处理之后产生结果
7、为信息信息具有相对性,时效性(2)数据与信息的联系:信息是客观事物属性的反映。是经过加工处理并对人类客观行为产生影响的数据表现形式。 数据是反映客观事物属性的记录,是信息的具体表现形式。数据经过加工处理之后,成为信息。而信息必须通过数据才能传播,才能对人类有影响。2简述数据库、数据库管理系统、数据库系统的概念。 (1)数据库( DataBase ,简称 DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。(2)数据库管理系统( DataBase Managemen
8、t sytem ,简称 DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。 DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。目前,专门研制 DBMS 的厂商及其研制的 DBMS 产品很多。著名的有美国 IBM 公司的 DB2 关系数据库管理系统和 IMS 层次数据库管理系统、美国 Oracle 公司的 oracle 关系数据库管理系统、美国微软公司的 SQL Server关系数据库管理系统等。(3)数据库系统( D
9、ataBaseSystem ,简称 DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。但是在日常工作中人们常常把数据库系统简称为数据库。3数据管理技术经历了哪几个阶段?各阶段的主要特点是什么? (1)人工管理阶段。特点:数据的管理者:人数据面向的对象:某一应用程序数据的共享程度:无共享,冗余度极大数据的独立性:不独立,完全依赖于程序数据的结构化:无结构数据控制能力:应用程序自己控制(2)文件系统阶段。特点:数据的管理者:文件系统数据面向的对象:
10、某一应用程序数据的共享程度:共享性差,冗余度大数据的独立性:独立性差数据的结构化:记录内有结构,整体无结构数据控制能力:应用程序自己控制(3)数据库系统阶段。特点:数据的管理者:数据库管理系统数据面向的对象:整个应用系统数据的共享程度:共享性高,冗余度小数据的独立性:具有高度的物理独立性和逻辑独立性数据的结构化:整体结构化,用数据模型描述数据控制能力:由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力4文件系统与数据库系统有什么本质的区别? 文件系统把数据组织成相互独立的数据文件,实现了记录内的结构性,但整体无结构;而数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库
11、系统与文件系统的本质区别。5简述数据库系统的特点。 数据库系统的主要特点有: (1)数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。在数据库系统中,数据不再针对某一个应用,而是面向全组织,具有整体的结构化。不仅数据是结构化的,而且数据的存取单位即一次可以存取数据的大小也很灵活,可以小到某一个数据项(如一个学生的姓名),大到一组记录(成千上万个学生记录)。而在文件系统中,数据的存取单位只有一个:记录,如一个完整的服装订单记录。 (2)数据的共享性高,冗余度低,易扩充,数据库的数据不再面向某个应用而是面向整个系统,因此可以被多个用户、多个应用以多种不同
12、的语言共享使用。由于数据面向整个系统,是有结构的数据,不仅可以被多个应用程序共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充。数据共享可以大大减少数据冗余,节约存储空间,同时还能够避免数据之间的不相容性与不一致性。 (3)数据独立性高,数据独立性包括数据的物理独立性和数据的逻辑独立性。数据库管理系统的模式结构和二级映像功能保证了数据库中的数据具有很高的物理独立性和逻辑独立性。(4)数据由 DBMS 统一管理和控制,数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。DBMS提供了统一的数据控制功能,包括数据的安全性保护、数据的完整
13、性检查、并发控制和数据库恢复。DBMS 数据控制功能包括四个方面:数据的安全性保护;数据的完整性检查;并发控制;数据库恢复。6简述数据库管理系统的主要功能。(1)数据库定义功能:提供数据定义语言(Data Definition Language,DDL),让用户能够方便地定义数据库的逻辑结构、存储结构和存取路径,描述对数据的完整性和安全性等要求; (2)数据存取功能:提供数据操纵语言(Data Manipulation Language,DML),在保证数据的完整性和安全性基础上,方便、高效地实现数据的查找、插入、修改和删除等操作; (3)数据组织与存储功能:提供数据在外围存储设备上的物理组织
14、和存储方式; (4)事务运行管理功能:提供事务运行管理及运行日志,事务运行的安全性监控和数据完整性检查,事务的并发控制及系统恢复等功能;(5)数据库建立维护功能:提供了数据安全控制、完整性保障、数据库备份、数据库重组和性能监控等维护工具软件,用于提高系统运行效率;(6)通信接口:提供与其他类型数据库系统或软件之间的格式转换和网络通信功能,实现异构数据库互访和互操作。7简述数据库系统的三级模式结构。这种结构的优点是什么?如何实现模式间的转换? (1)数据库系统的三级模式结构由外模式、模式和内模式组成。(参见书上图 1 . 29 ) 外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终
15、用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。(2)特点:数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给 DBMS 管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。(3)为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这
16、三级模式之间提供了两层映像:外模式模式映像和模式内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。8什么是数据独立性?为什么数据库系统具有数据独立性? 数据独立性包括数据的物理独立性和数据的逻辑独立性。数据与程序的逻辑独立性表现在当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性表现在当数据库的存储结构改变了,由数据库管理员对模式内模式映像做相
17、应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。9简述数据库系统的组成。 数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。10数据库管理员、系统分析员、数据库设计人员、应用程序员的职责分别是什么?数据库管理员:负责全面地管理和控制数据库系统。具体职责包括: 决定数据库的信息内容和结构; 决定数据库的存储结构和存取策略; 定义数据的安全性要求和完整性约束条件; 监督和控制数据库的使用和运行; 改进
18、和重组数据库系统。系统分析员:负责系统的需求分析和规范说明,需要与用户以及数据库管理员相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。数据库设计员:负责数据库中数据的确定以及数据库各级模式的设计。应用程序员:负责设计和编写应用系统的程序模块,并进行调试和安装。11观察和分析一个实际的数据库管理系统。它支持三级模式结构吗?两层之间的映像是如何定义的?是否有完整性和安全性机制?是否具有分布式处理功能?有哪些特色功能?12(1990 年高级程序员考试试题)从下列关于数据库系统特点的叙述中选出 5 条正确的叙述。 数据库避免了一切数据重复。 数据库减少了数据冗余。 各类用户程序均可随意地使
19、用数据库中的各种数据。 用户程序按所对应的子模式使用数据库中的数据。 数据库数据可经 DBA认可的各用户所共享。 数据库系统中如概念模式有所改变,则需将与其有关的子模式做相应改变,否则用户程序需改写。 数据库系统中概念模式如有改变,子模式不必变,因而用户程序亦不必改写。 数据库系统的存储模式如有改变,则概念模式应予调整,否则用户程序会在执行中出错。 数据库系统的存储模式如有所改变,概念模式不需改动。 数据一致性是指数据库中数据类型一致。习题21答:数据模型通常由数据结构、数据操作和完整性约束三部分组成:数据结构是所研究的对象类型的集合,刻画对象和对象间的联系,是对数据库系统静态特性的描述。如对
20、象的类型、性质、对象之间的参照、所属关系等。数据操作是指对数据库中各种对象的值允许执行的操作的集合,包括有关的操作要求,是对数据库系统动态特性的描述。数据库主要有查询和更新(增加、删除和修改)操作。数据模型中需要定义这些操作的具体含义、操作符号、操作规则和实现操作的语句。完整性约束即数据和数据间应该满足的条件,是一组完整性规则的集合,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确性、有效性和相容性。2答:略3答:可参加本章图2-2所示的1:1、1:n、n:m三种实体与实体的联系。4答:UML中主要的图有:Use case diagram(用例图)、Class diagram(
21、类图)、Sequence diagram(顺序图)、Collaboration diagram(协作图)、Activity diagram(活动图)。功能如下:用例图:说明的是谁要使用系统以及使用该系统可以做些什么。UML9种图中一个用例图包含了多个模型元素,如系统、参与者和用例,并且显示了这些元素之间的各种关系,如泛化、关联和依赖。类图:类图是一种模型类型,确切的说,是一种静态模型类型。一个类图根据系统中的类以及各个类之间的关系描述系统的静态视图。顺序图:用来展示对象之间是如何进行交互的。顺序图将显示的重点放在消息序列上,即消息是如何在对象之间被发送和接收的。协作图:可以看成类图和顺序图的交
22、集,协作图建模对象或者角色,以及它们彼此的通信方式。活动图:活动图能够演示出系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图建模的商务需求。5答:在层次模型中,实体之间联系用树形结构(指针)来实现。在网状模型中,实体之间联系用指针实现。在关系模型中,实体之间联系用关键码 (外键或关系运算) 来实现。6答:Entity1Entity2A#A1A3A2Relationship1B#D1B1B2nm7答:8答:ABCDE9答:ABCDE习题35.(1)专业=通信工程(学生)(2)课程号,学分(课程)(3)课程号,成绩(姓名=张珊(学生)选修)(4)学号,课程号(选
23、修)课程6.A:,B:,C:, D:,E:7.C,D习题43.(1)Select 服装ID,型号,颜色,价格 from 服装关系 where 品牌=佐丹奴;(2)select 姓名,电话 from 顾客关系 where 顾客ID in (select 顾客购买记录关系服装(服装服装关系where品牌美津浓);(3)select * from 顾客关系 where 顾客编号 not in (select 顾客编号 from 购买记录关系);(4)select * from 顾客关系 where not exist (select * from 服装关系 where 品牌=佐丹奴 and not
24、exist (select * from 购买记录关系 where 购买记录关系.服装编号=服装关系.服装编号 and 购买记录关系.顾客编号=顾客关系.顾客编号)4.(1)select * from 学生 where 专业=通信工程;(2)select 课程号,学分 from 课程;(3)select 课程号,成绩 from 选修 where 学号=(select 学号 from 学生 where 姓名=张珊);(4)SELECT 姓名FROM 学生WHERE NOT EXISTS(SELECT * FROM 课程 WHERE NOT EXISTS(SELECT *FROM 选修WHERE学
25、号= 学生.学号 AND 课程号 = 课程.课程号);(5)select * from 学生 where 学号 not in(select 学号 from 选修);(6)select 学号 from 选修 where 课程号 in(select 课程号 from 课程课程1where 课程1.先行课课程号=(select 课程号 from 课程课程2 where 课程2.课程名=数据库原理);(7)delete from 选修 where 学号=9501;(8)update 选修 set 成绩=89 where 学号=(select 学号 from 学生 where 姓名=张林)and 课程号
26、=(select 课程号 from 课程 where 课程名=数据库原理);(9)create view v1 as select 学号,姓名,成绩 from 学生,选修,课程 where 学生.学号=选修.学号 and 选修.课程号=课程.课程号 and 课程名=数据库原理;(10)select * from v1 where grade90;习题52. (1)学生(学号,姓名,出生日期,班号,宿舍区),候选码:学号。外码:班号班级(班号,专业名,系名,人数,入校年份),候选码:班号。外码:系名系(系号,系名,系办公室地点,人数),候选码:系号学会(学会名,成立年份,地点,人数),候选码:学
27、会名学生-学会(学号,学会名,入会年份),候选码:(学号,学会名),外码:学号,学会名(2)学生关系的最小依赖集为学号姓名,学号出生日期,学号班号,学号宿舍区班级关系的最小依赖集为班号专业名,班号系名,班号人数,班号入校年份系关系的最小依赖集为系号系名,系号系办公室地点,系号人数学会关系的最小依赖集为学会名成立年份,学会名地点,学会名人数学生-学会关系的最小依赖集为(学号,学会名)入会年份以上依赖集均无传递依赖,部分依赖。(3)各关系模式的候选码、外码已在(1)中注明。无全码。3(1)最小依赖集为AC,CA,BC,DC(2)候选码:BD(3)AC,BC,DC,BD4.F是最小依赖集。(1)(A
28、B)+=U ,A+=A,B+=BCD。故AB是候选码。同理可证AC,AD均是候选码。(2)因BC,故C部分依赖于AB。因ADB,BC,故C传递依赖于AD。因CD,故D部分依赖于AC。因ABC,C D,故D传递依赖于AB。5.ABE,BEC,CEF,CFB,CFD,CA,DE,DF6.(1)是。按BCNF的定义,若XY,且Y不是X的子集时,每个决定因素都包含码,对于二元关系决定因素必然包含码。(2)是。唯一的决定因素(学号,课程号)就是码。(3)F是最小依赖集。把所有属性分类:L类: D,N类:无,LR类: A,B,C,E,R类:无(DA)+=U,(DB)+=DB,(DC)+=DC,(DE )+
29、=DEC ,故DA是唯一候选码。并非所有决定因素都包含码,该关系模式不是BCNF。7.因为ABECDEF=E,ABE-CDEF=AB,EABF+,故该分解是无损连结分解。8. F的最小依赖集为SD,IS,IQ,BQ。把所有属性分类:L类: I、B,N类: O,LR类:S,R类:DQ(IBO)+=U,故IBO为码。具有无损连接性的BCNF分解为:SD,IS,IQ,BQ,IBO9.不正确。不符合多值依赖定义。10.BCNF。因为CA是非平凡且 非函数依赖的多值依赖。11.(1)候选码:AC,AD,BC,BD(2)不是4NF。存在非平凡且 非函数依赖的多值依赖。(3)不是BCNF。决定因素A、B都不
30、包含码。(4)是3NF。所有属性都是主属性,不存在非主属性到码的部分函数依赖或传递函数依赖。习题614.A:B:C:D:E:15.【问题1】(1) n (2) m (3) 1 (4) n, 或m (5) m (6) n 其中,(1)、(2)的答案可互换,(5)、(6)的答案可互换。【问题2】(a)读者ID,图书ID (b)读者ID,ISBN号【问题3】关系模式主 键外 键读 者读者ID书 目 ISBN号图 书 图书ID ISBN 号借还记录 读者ID,图书ID,借书时间读者ID,图书ID预约登记 读者ID ,ISBN 号,预约时间读者ID,ISBN 号,图书ID习题71. 简述查询优化的必要性
31、。答:查询优化使得用户不必考虑如何最好地表达查询,简化了用户的工作。同时,同一个查询可以有不同的查询计划,而不同的查询计划执行的效率也不一样,因而对提高RDBMS的查询效率是非常必要的,是影响RDBMS性能的关键因素。2. 简述查询优化的一般准则。答:(1)选择运算应尽可能先做。选择运算一般使计算的中间结果大大变小,提前处理常常可使查询代价降低几个数量级。(2)在执行连接前对关系适当地预处理。如执行连接前事先在连接属性上建立索引,可以减少对表的扫描次数,从而大大减少连接处理的时间。(3)投影运算和选择运算同时进行。如有若干投影和选择运算,并且它们都对同一个关系操作,则可以在扫描此关系的同时完成
32、所有的这些运算以避免重复扫描关系。(4)把投影同其前或其后的双目运算结合起来。没有必要为了去掉某些字段而扫描一遍关系。(5)把某些选择同在它前面要执行的笛卡尔积结合起来成为一个连接运算,连接特别是等值连接运算要比同样关系上的笛卡尔积省很多时间。(6)找出公共子表达式。对那些重复出现且结果不是很大的子表达式,可以先计算一次并把结果写入中间文件,需要时从外存中读入。3. 简述查询优化的处理步骤。答:(1)将查询转换成某种内部表示(2)根据一定的等价变换规则把语法树转换成标准(优化)形式(3)选择低层的操作算法(4)生成查询计划习题81. 试述事务的概念及事务的四个特性。答:原子性(Atomicit
33、y)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)2. 并发操作可能产生哪几类数据不一致?用什么方法可以避免各种不一致的情况。答:并发操作可能产生丢失修改、不可重复读、读“脏”数据。为避免不一致的情况,一般采用封锁技术,一级封锁协议可避免丢失修改,二级封锁协议可避免丢失修改和读“脏”数据,三级封锁协议可避免丢失修改、不可重复读、读“脏”数据。3. 试述死锁的处理方法?并说明各方法的优缺点。答:对于死锁处理,可以采用预防的策略,如一次封锁法和顺序封锁法,但实际中很难操作,因此,实际中一般允许死锁,但必须提供死锁的诊断和解除方法。4. 数据库运行中
34、可能产生的故障有哪几类?答:事务内部的故障、系统故障、介质故障、计算机病毒。5. 数据库的恢复技术有哪些?答:数据转储和登录日志文件。习题91答:数据库完整性是指数据库中数据的正确性和相容性。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以通过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。2答:数据库的安全机制主要包括用户标识和鉴别、存取控制策略、视图机制和数据加密审计跟踪等技术构成。3答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。数据库完整性是为了防止数据库中存在不符合语义的数
35、据,也就是防止数据库中存在不正确的数据。因此完整性检查和控制的防范对象是不合语义、不正确的数据,防止它们进入数据库。数据库的安全性是保护数据库,防止恶意的破坏和非法的存取。因此安全性措施的防范对象是非法用户和非法操作。4答:完整性约束条件是指数据库中的数据应该满足的语义约束条件。一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。静态列级约束是对一个列的取值域的说明,包括以下几个方面: ( l )对数据类型的约束,包括数据的类型、长度、单位、精度等; ( 2 )对数据格式的约束; ( 3 )对取值范围或取值集合的约束; ( 4 )对空值的约束;
36、 ( 5 )其他约束。静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。常见的静态关系约束有: ( l )实体完整性约束; ( 2 )参照完整性约束; ( 3 )函数依赖约束。动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面: ( l )修改列定义时的约束; ( 2 )修改列值时的约束。动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件。动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。5答:CRE
37、ATE TABLE DEPT (Deptno NUMBER(6),DeptnameVARCHAR(30),Managername VARCHAR(20),PhoneNumber Char(11)CONSTRAINT PK_SC RIMARY KEY(Deptno);CREATE TABLE EMPLOYEES(Empno NUMBER(6),Ename VARCHAR(20),Age NUMBER(2),CONSTRAINT CONS1 CHECK ( Aage=55),Job VARCHAR(20), SalalryNUMBER(8,2), Deptno NUMBER(6), CONSTRA
38、INT FK_DEPTNO FOREIGN KEY(Deptno) REFFERENCES DEPT(Deptno);6答:对于违反实体完整性和用户定义的完整性的操作一般都采用拒绝执行的方式进行处理。而对于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。7答:Windows身份验证模式是SQL Server中的默认身份验证模式。在Windows身份验证模式下,SQL Server仅依赖用户操作系统Windows的身份验证。然后,授予Windows用户或组对SQL Server 的访问权限。如果用户在登录时提供了SQL Server登录
39、ID,则系统将使用SQL Server身份验证对其进行验证。然后提供相应的访问权限,对数据库系统进行访问。8答:触发器是一种特殊的存储过程,是用户定义的关系表上的一类事件驱动的特殊过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发的,类似于数据表中参照完整性约束,主要功能是监视用户对数据的修改、更新和删除。按照对表的插入、删除、更新操作提供了三类触发器:插入触发器、删除触发器、更新触发器。在一个单独的数据表上,最多只能创建与之关联的这三类触发器。9答:实现数据库安全性控制的常用方法和技术有:( l )用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求
40、进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。( 2 )存取控制:通过用户权限定义和合法权检查确保只有合法权限的用户访问数据库,所有未被授权的人员无法存取数据。例如CZ 级中的自主存取控制( DAC ) , Bl 级中的强制存取控制(MAC )。( 3 )视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。( 4 )审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA 可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。( 5 )数据加密:对
41、存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。10答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先检查用户的存取权限。防止不合法用户对数据库的存取。强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。11答:审计功能是指DBMS 的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。利用数据库的审计功能,DBA
42、可以根据审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。12B13D14(1)A(2)D习题10略习题111 答:1996年,万维网协会(W3C)开始设计一种可以扩展的标记语言,使其能够将SGML的灵活性和强大功能与已经被广泛采用的HTML结合起来。1998年,W3C制定了扩展标记语言XML(eXtensible Markup Language)标准。XML是一种文档格式和标准,用于不同组织间的数据交换。 XML是一种界定文本数据的统一标准,被称为“Web上的ASCII码”。这就像某用户使用自己喜爱的编程语言创建一种数据结构后,其他用户也可以在其他计算机
43、平台上使用他自己喜欢的语言来访问该数据结构一样。XML的标记可以说明用户所描述的概念,而使用其属性来控制它们的结构,从而使用户可以定义自己所设计出的语法并同其他人共享。 至今XML已经成为一种存储和交换数据的通用格式,是那些带标记的(如文本一类带有标示文档结构和重点的标记)、结构化(嵌套对象)或半结构化(异类数据)信息的常用选择。XML也逐渐成为一种在网络中不同应用程序之间相互交换数据的重要标准。2 答:DOM和SAX是针对XML文档的两种不同的应用程序编程接口。DOM(Document Object Model,文档对象模型)是一种应用程序接口(API)的应用,它将文档(如XML文档,HTM
44、L文档等)看成是一个文档对象,然后通过程序语言(如JavaScript等脚本语言,C+等)调用该文档对象,对文档中的数据进行存取,并利用程序对获取的数据进行跟进一步的处理。XML DOM是将XML文档以DOM方式封装,通过DOM技术,应用程序即可很容易地提取XML文档中的数据。SAX是Simple API for XML的缩写。它不像DOM那样是W3C的推荐标准。SAX的工作原理简单地说就是对文档进行顺序扫描,当扫描到文档(document)开始与结束、元素(element)开始与结束、文档(document)结束等地方时通知事件处理函数,由事件处理函数做相应动作,然后继续同样的扫描,直至文档
45、结束。SAX解析器是边读入边解析,带有一定的实时性,特别适合于XML流数据的处理。3 答:学术界和工业界存在大量的XML数据库原型系统和商用产品。目前约有近40种XML数据库产品,大致上可分为三大类型:1.商业类(commercial):如Ipedo、Tamino、Natix、Xyleme等。其中,美国Ipedo公司的Ipedo XML Database和德国Software AG公司的Tamino是其中的佼佼者,成为目前市场上的主流产品。2.研究类(research):如Stanford大学早期开发的Lore等。3.开放源码类(open source):其中影响较大的是Berkeley DB XML、dbXML、XDB和Xindice。在学术界,真正受到关注的XML数据库原型系统有三家:密歇根大学安阿伯分校的Timber、西雅图华盛顿大学的Tukwila和威斯康星大学麦迪逊分校的Niagara。4 答:XMLSchema与DTD一样,也是对一类X