数据库原理题库2009简答题答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

大多数试题答案:完整简答题答案:一、简答题1.简述数据库系统的特点。数据结构化数据的共享性高,冗余度低且易扩充数据独立性高数据由数据库管理系统统一管理和控制2.数据库管理系统的主要功能有哪些?数据定义功能数据组织、存储和管理数据操作功能数据库的事务管理和运行管理数据库的建立和维护功能其他功能3.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?物理独立性:用户的应用程序与数据库中数据物理存储是互相独立的逻辑独立性:用户的应用程序与数据库中数据库的逻辑结构是互相独立的。4.简述数据库系统的三级模式结构。数据库系统的三级模式结构由外模式、模式和内模式组成。外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。5.试述数据库系统的组成。数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。注:以下为详细组成:6.简述文件系统与数据库系统的区别和联系。文件系统与数据库系统的区别(1)文件系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;(2)文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;(3)文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;(4)文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。文件系统和数据库系统之间的联系:(1)均为数据组织的管理技术;(2)均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;(3)数据库系统是在文件系统的基础上发展而来的。7.DBA的职责是什么?8.关系代数的基本运算有哪些?注:选择:𝜕𝑎R(选择出若干满足条件a的元组)投影:∏𝑎R(选择出若干满足条件a的属性列),删除了重复的元组连接:等值连接:选择两个属性列相同的元组连接自然连接:特殊的等值连接,比较分量为同名属性,重复属性列删除9.什么是基本表?什么是视图?两者的区别和联系是什么?基本表是本身独立存在的表,在sQL中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图10.简述视图的优点。(l)视图能够简化用户的操作;(2)视图使用户能以多种角度看待同一数据;(3)视图对重构数据库提供了一定程度的逻辑独立性;(4)视图能够对机密数据提供安全保护。11.所有的视图是否都可以更新?哪类视图是可以更新的,哪类视图是不可更新的?不是。基本表的行列子集视图一般是可更新的。若视图的属性来自集函数、表达式,则该视图肯定是不可以更新的12.简述SQL的特点。(l)综合统一。sQL语言集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于一体。(2)高度非过程化。用sQL语言进行数据操作,只要提出“做什么”,而无需指明“怎么做”,因此无需了解存取路径,存取路径的选择以及sQL语句的操作过程由系统自动完成。(3)面向集合的操作方式。sQL语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。(4)以同一种语法结构提供两种使用方式。sQL语言既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式;作为嵌入式语言,它能够嵌入到高级语言程序中,供程序员设计程序时使用。(5)语言简捷,易学易用13.在嵌入式SQL中是如何协调SQL语言的集合处理方式和主语言的单记录处理方式的?14.关系数据库的完整性规则有哪几类?实体完整性参照完整性用户自定义完整性15.试述查询优化在关系数据库系统中的重要性和可能性。重要性:关系系统的查询优化既是RDBMS实现的关键技术又是关系系统的优点所在。它减轻了用户选择存取路径的负担。用户只要提出“干什么”,不必指出“怎么干”。查询优化的优点不仅在于用户不必考虑如何最好地表达查询以获得较好的效率,而且在于系统可以比用户程序的“优化’夕做得更好。可能性:(l)优化器可以从数据字典中获取许多统计信息,例如关系中的元组数、关系中每个属性值的分布情况、这些属性上是否有索引、是什么索引(B+树索引还是HASH索引或惟一索引或组合索引)等。优化器可以根据这些信息选择有效的执行计划,而用户程序则难以获得这些信息。(2)如果数据库的物理统计信息改变了,系统可以自动对查询进行重新优化以选择相适应的执行计划。在非关系系统中必须重写程序,而重写程序在实际应用中往往是不太可能的。(3)优化器可以考虑数十甚至数百种不同的执行计划,从中选出较优的一个,而程序员一般只能考虑有限的几种可能性。(4)优化器中包括了很多复杂的优化技术,这些优化技术往往只有最好的程序员才能掌握。系统的自动优化相当于使得所有人都拥有这些优化技术16.写出Armstrong推理规则中自反律、增广律、传递律的形式化定义。设U为属性集总集,F为U上的一些函数依赖,则有关系模式RU,FA1自反律:若yXU,则X→Y为F所蕴含。A2增广律:若X→Y为F所蕴含,且ZU,则XZ→YZ为F所蕴含。A3传递律:若X→Y及Y→Z为F所蕴含,则X→Z为F所蕴含17.简述日志文件的内容事务标识操作类型操作对象更新前的数据旧值更新后数据新值18.简述SQL中的自主存取控制机制。自主存取控制方法:定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先检查用户的存取权限。防止不合法用户对数据库的存取。注:强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。19.简述数据库中事务的概念及其性质。事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。事务具有4个特性:原子性一致性、隔离性和持续性。原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。持续性:持续性也称永久性,指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。20.简述事物的原子性。原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。21.简述并发操作带来的三类数据不一致性丢失修改、不可重复读和读“脏’夕数据。(l)丢失修改:两个事务Tl和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了)Tl提交的结果,导致Tl的修改被丢失。(2)不可重复读:不可重复读是指事务Tl读取数据后,事务几执行更新操作,使Tl无法再现前一次读取结果。(3)读“脏”数据:读“脏’夕数据是指事务Tl修改某一数据,并将其写回磁盘,事务几读取同一数据后,Tl由于某种原因被撤销,这时Tl已修改过的数据恢复原值,几读到的数据就与数据库中的数据不一致,则几读到的数据就为“脏”数据,即不正确的数据。22.在数据库中为什么要并发控制?并发控制技术可以保证事务的哪些特征?数据库是共享资源,通常有许多个事务同时在运行。当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。所以数据库管理系统必须提供并发控制机制保证事务的原子性、一致性、隔离性和持续性。23.什么是封锁?基本的封锁类型有几种?封锁就是事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁。加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。基本的封锁类型有两种:排它锁(ExclusiveLocks,简称x锁)和共享锁(ShareLocks,简称S锁)。排它锁又称为写锁。注:若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。这就保证了其他事务在T释放A上的锁之前不能再读取和修改A。共享锁又称为读锁。若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这就保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。24.简述两段封锁协议的内容。两阶段封锁是在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁在释放一个封锁之后,事务不能再获得任何其他封锁。“两段”锁的含义:事务分为两个阶段:第一阶段是获得封锁,也称为扩展阶段;第二阶段是释放封锁,也称为收缩阶段。25.简述数据库系统中活锁和死锁的含义。避免活锁的简单方法是什么?活锁的含义是该等待事务等待时间太长,似乎被锁住了,实际上可能被激活。如果事务Tl封锁了数据Rl,几封锁了数据凡,然后Tl又请求封锁几,因几已封锁了几,于是Tl等待几释放几上的锁。接着几又申请封锁Rl,因Tl已封锁了Rl,几也只能等待Tl释放Rl上的锁。这样就出现了Tl在等待几,而几又在等待T}的局面,T}和几两个事务永远不能结束,形成死锁26.什么叫做数据库的恢复?数据库恢复的基本技术有哪些?数据库管理系统把数据库从某种错误状态恢复到完整状态就叫做数据库恢复:它的实现技术数据转储和登录日志文件。27.简述数据库系统中可能发生的故障类型,以及数据恢复方法。事务故障、系统故障、介质故障、计算机病毒事务故障:某个事务在运行过程中由于种种原因未运行至正常终止点事务故障的恢复:事务撤消(UND)注:恢复程序要在不影响其它事务运行的情况下,强行回滚(RBACK)该事务,即清除该事务对数据库的所有修改,使得这个事务象根本没有启动过一样系统故障:由于某种原因造成整个系统的正常运行突然停止,致使所有正在运行的事务都以非正常方式终止。系统故障的恢复:1.清除尚未完成的事务对数据库的所有修改注:如果DBMS无法确定哪些事务已更新过数据库,则系统重新启动后,恢复程序要强行撤消(UND)所有未完成事务,使这些事务象没有运行过一样。2.将已完成事务提交的结果写入数据库注:如果DBMS无法确定哪些事务的提交结果尚未写入物理数据库,则系统重新启动后,恢复程序需要重做(RED)所有已提交的事务。介质故障:硬件故障使存储在外存中的数据部分丢失或全部丢失介质故障的恢复:装入数据库发生介质故障前某个时刻的数据副本,重做自此时始的所有成功事务,将这些事务已提交的结果重新记入数据库计算机病毒:人为的故障或破坏,是一种计算机程序。计算机病毒的恢复:杀毒软件28.简述“运行记录优先原则”。在数据库系统中,写一个修改到数据库中和写一个表示这个修改的登记记录到日志文件中是两个不同的操作,在这两个操作之间有可能发生故障。这时,如果先写了数据库修改,而在运行记录中没有登记这个修改,则以

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功