数据库复习资料

 

简答题

简述数据库系统的特点。

1.数据结构化

数据之间具有联系,面向整个系统。

2.数据的共享性高,冗余度低,易扩充

数据可以被多个用户、多个应用程序共享使用,可以大大减少数据冗余,节约存储空间,避免数据之间的不相容性与不一致性。

3.数据独立性高

数据独立性包括数据的物理独立性和逻辑独立性。

物理独立性是指数据在磁盘上的数据库中如何存储是由DBMS管理的,用户程序 不需要了解,应用程序要处理的只是数据的逻辑结构,这样一来当数据的物理存储结构改变时,用户的程序不用改变。

逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不改变。

4.数据由DBMS统一管理和控制

数据库的共享是并发的(concurrency)共享,即多个用户可以同时存取数据库中的数据,甚至可以同时存取数据库中的同一个数据。

DBMS必须提供以下几方面的数据控制功能:

数据的安全性保护(security)

数据的完整性检查(integrity)

数据库的并发控制(concurrency)

数据库的故障恢复

数据库的故障恢复(recovery)P279

数据库管理系统的主要功能有哪些?【P5】

(1)数据定义功能。DBMS提供相应数据语言来定义(DDL)数据库结构,它们是刻画数据库框架,并被保存在数据字典中。

(2)数据组织、存取、管理功能。

DBMS要分类组织、存储和管理各种数据,包括数据字典。用户数据。数据的存取路径等。

(3)数据操作功能。

DBMS提供数据操纵语言(DML),实现对数据库数据的基本存取操作:检索,插入,修改和删除。

(4)数据库事务管理和运行管理功能。DBMS提供数据控制功能,即是数据的安全性、完整性和并发控制等对数据库运行进行有效地控制和管理,以确保数据正确有效。

(5)数据库的建立和维护功能。包括数据库初始数据的装入,数据库的转储、恢复、重组织,系统性能监视、分析等功能。

(6)其他功能。DBMS提供处理数据的传输,实现用户程序与DBMS之间的通信,通常与操作系统协调完成。

答:数据定义功能;数据的组织存储管理;数据操纵功能;数据库的运行控制管理,数据控制包括:安全(Security)、完整(Integrity)、并发(Concurrency)、恢复(Recovery);数据库的建立和维护功能。

什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?

答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的

数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

简述数据库系统的三级模式结构。

答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成; 外模式(Sub-Schema):用户的数据视图,是数据的局部逻辑结构,模式的子集;

模式(Schema):所有用户的公共数据视图,是数据库中全体数据的全局逻辑结构和特性的描述,一个数据库只有一个模式;

内模式(Storage Schema):又称存储模式,数据的存储方式,数据库数据在物理结构的描述。

数据库系统三级模式结构,使数据库的用户看到的数据库,与数据库的物理方面,即实际存储的数据库区分开来,提高了数据的物理独立性和逻辑独立性。数据与程序的独立,使得数据的定义从应用程序中分离出去,用户的重点放在模式的定义上;由于数据的存取由DBMS管理,用户不必考虑存取路径等细节,简化了应用程序的编制。

试述数据库系统的组成。

答:数据库系统一般由数据库、数据库管理系统(及其开发工具)、用用系统、数据库管理员构成。数据库系统一般由硬件平台及数据库、软件、人员组成。硬件是必须的,软件有OS、DBMS、DBMS为核心的应用开发工具、应用系统,用户又细分为最终用户、应用程

序员、系统分析员、数据库管理员DBA,数据库设计员。

简述文件系统与数据库系统的区别和联系。

答: 文件系统的特点:1、数据可以长期保存 2、由文件系统管理数据。其缺点为:数据共享性差,冗余度大,数据独立性差,容易造成数据的不一致;数据库系统中,数据是面向整个系统,实现了数据的结构化;数据的共享性高,冗余度低,易扩展;数据独立性高;数据由DBMS统一管理和控制。

文件系统和数据库系统均可以长期保存数据,由数据管理软件管理数据,数据库系统是在文件系统基础上发展而来。

DBA的职责是什么?

具体职责:

(1)决定数据库中的信息内容和结构。

(2)决定数据库的存储结构和存储策略。

(3) 定义数据的安全性要求和完整性约束条件。

(4)监督数据库的使用和运行

(5) 数据库的改进和重组重构。

关系代数的基本运算有哪些 ?

并、差、笛卡尔积、投影和选择5种运算为基本的运算。其他3种运算,即交、连接和除,均可以用这5种基本运算来表达。

什么是基本表?什么是视图?两者的区别和联系是什么?

表是实实在在得保存数据的实体,写入的数据都保存在表中,而视图 是不保存数据的,也没有数据.视图就是一条 语句,实际上视图从表中去数据.只是给我们的感觉好像直接从表中 取得

一样. 表可以建立各种触发器,可以建立索引,可以建立主健,约束等. 但是视图不能建立这些对象(视图可以建立替代触发器) . 表和视图可以更新,但是视图的更新受到约束. 比如,group by 和表连接生成的视图不能更新表是实实在在得 保存数据的实体, 写入的数据都保存在表中, 而视图是不保存数据的, 也没有数据. ------------------可以理解为视图的数据都是从表中取出来,视图就是你定下的一个框框而已,内容都是在表中。

简述视图的优点。

所有的视图是否都可以更新? 哪类视图是可以更新的,哪类视图是不可更新的?

答:不是。视图是不实际存储数据的虚表,因此对视图的更新,最终要转换为对基本表的更新。因为有些视图的更新不能惟一有意义地转换成对相应基本表的更新,所以并不是所有的视图都是可更新的。如对视图S_G(学生的学号及其平均成绩)而言,要修改平均成绩,必须修改各科成绩,但无法知道哪些课程成绩的变化导致了平均成绩的变化。

CREATE VIEW S_G(Sno,Gavg)

AS SELECT Sno,AVG(Grade) FROM SC GROUP BY Sno;

基本表的行列子集视图一般是可更新的;若视图的属性来自集函数、表达式,则该视图肯定是不可更新的。

简述 SQL 的特点。

答:⑴综合统一:SQL语言集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于一体。

⑵高度非过程化:用SQL语言进行数据操作,只要提出“做什么”,无须指明“怎么做”,因此无需了解存取路径。

⑶面向集合的操作方式:SQL语言采用的集合操作方式,不仅操作对象、查询结果可

以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。

⑷以同一种语法结构提供两种使用方法:SQL语言既是自含式语言,能独立地用于联机交互;又是嵌入式语言,能嵌入到高级语言中进行混合编程。

⑸语言简捷,易学易用。

在嵌入式SQL中是如何协调SQL语言的集合处理方式和主语言的单记录处理方式的? 答:用游标来协调这两种不同的处理方式。游标区是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果,每个游标区都有一个名字。用户可以通过游标逐一获取记录,并赋给主变量,交由主语言进一步处理。

关系数据库的完整性规则有哪几类?

完整性规则有以下三类

实体完整性规则用于定义属性的取值范围

参照完整性的规则定义一个或多个关系中属性值间的联系、影响和约束。 用户自定义完整性规则定义更新操作对数据库中值的影响和限制

试述查询优化在关系数据库系统中的重要性和可能性。

答 重要性:关系系统的查询优化既是RDBMS实现的关键技术又是关系系统的优点所在。它减轻了用户选择存取路径的负担。用户只要提出“干什么”,不必指出“怎么干”。 查询优化的优点不仅在于用户不必考虑如何最好地表达查询以获得较好的效率,而且在于系统可以比用户程序的“优化”做得更好。 可能性:这是因为: (1)优化器可以从数据字典中获取许多统计信息,例如关系中的元组数、关系中每个属性值的分布情况、这些属性上是否有索引、是什么索引(B+树索引还是HASH索引或惟一索引或组合索引)等。优化器可以根据这些信息选择有效的执行计划,而用户程序则难以获得这些信息。 (2)如果数据库的物理统计信息改变了,系统可以自动对查询进行重新优化以选择相适应的执行计划。在非关系系统

中必须重写程序,而重写程序在实际应用中往往是不太可能的。 (3)优化器可以考虑数十甚至数百种不同的执行计划,从中选出较优的一个,而程序员一般只能考虑有限的几种可能性。

(4)优化器中包括了很多复杂的优化技术,这些优化技术往往只有最好的程序员才能掌握。系统的自动优化相当于使得所有人都拥有这些优化技术。

数据库管理系统的主要功能有哪些?

答:数据库定义功能;数据存取功能;数据库运行管理;数据库的建立和维护功能。

什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?

答:物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。即,数据在磁盘上怎样存储由DBMS管理,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。

逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即,当数据的逻辑结构改变时,用户程序也可以不变。

数据与程序的独立,把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。

简述数据库系统的三级模式结构。

答:1)模式 模式也称逻辑模式或概念模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。 模式实际上是数据库数据在逻辑级上的视图。一个数据库只有一个模式。定义模式时不仅要定义数据的逻辑结构,而且要定义数据之间的联系,定义与数据有关的安全性、完整性要求。 (2)外模式 外模式也称用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是

与某一应用有关的数据的逻辑表示。 外模式通常是模式的子集。一个数据库可以有多个外模式。应用程序都是和外模式打交道的。外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据对他们是不可见的。

(3)内模式 内模式也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。例如,记录的存储方式是顺序结构存储还是B树结构存储;索引按什么方式组织;数据是否压缩,是否加密;数据的存储记录结构有何规定等

试述数据库系统的组成。

答:数据库;硬件平台;软件;人员

简述文件系统与数据库系统的区别和联系。

答:区别:(1) 文件系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;(2) 文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;(3) 文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;(4) 文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。

联系:1) 均为数据组织的管理技术;(2) 均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;(3) 数据库系统是在文件系统的基础上发展而来的。

DBA的职责是什么?

答:负责全面地管理和控制数据库系统。具体职责包括:

决定数据库的信息内容和结构; ② 决定数据库的存储结构和存取策略;

③ 定义数据的安全性要求和完整性约束条件; ④ 监督和控制数据库的使用和运行; ⑤ 改进和重组数据库系统。

关系代数的基本运算有哪些 ?

答:并、差、笛卡尔积、投影和选择5种运算为基本的运算。其他3种运算,即交、连接和除,均可以用这5种基本运算来表达。

什么是基本表?什么是视图?两者的区别和联系是什么?

答:基本表是本身独立存在的表,在 sQL 中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。 视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。 简述视图的优点

答:l )视图能够简化用户的操作;

2 )视图使用户能以多种角度看待同一数据;

3 )视图对重构数据库提供了一定程度的逻辑独立性;

4 )视图能够对机密数据提供安全保护

所有的视图是否都可以更新? 哪类视图是可以更新的,哪类视图是不可更新的?

答:一般的,行列子集试图使可更新的。除此之外,还有些视图理论上可更新,有些理论上不可更新。

目前各个关系数据库一般都只允许对行列子集视图进行更新,对视图的更新还有进一步的规定。

例如DB2规定:

1)若视图是由两个以上的基本表导出的,则此视图不允许更新。

2)若视图的字段来自字段表达式或常数,则此视图不允许更新。

3)若视图的字段来自集函数,则此视图不允许更新。

4)视图定义中有Group By或Distinct字句,不允许更新。

5)若视图定义中有嵌套查询,并且内层查询的From字句中涉及的表也是导出该视图的基本表,此视图不允许更新。

6)一个不允许更新的视图上定义的视图也不允许更新。

简述 SQL 的特点。

答:1.综合统一 2.高度非过程化 3.面向集合的操作方式 4.以同一种语法结构提供多种使用方式 5.语言简洁,易学易用 6.对于数据统计方便直观

在嵌入式SQL中是如何协调SQL语言的集合处理方式和主语言的单记录处理方式的? 答:游标是用于协调SQL语言的集合处理方式和主语言的单记录处理方式.

SQL语言与主语言具有不同的数据处理方式.SQL语言是面向集合的,一条SQL语句原则上可以产生或处理多条记录.

主语言是面向记录的,一组主变量一次只能存放一条记录.所以仅使用主变量并不能完全满足SQL语句向应用程序输出数据的要求,为此嵌入式SQL引入了游标的概念,用游标来协调这两种不同的处理方式.

关系数据库的完整性规则有哪几类?

答:域完整性规则,用于定义属性的取值范围;

域联系的规则,定义一个或多个关系中,属性值间的联系、影响和约束。

关系完整性规则,定义更新操作对数据库中值的影响和限制。

试述查询优化在关系数据库系统中的重要性和可能性。

答:重要性:关系系统的查询优化既是 RDBMS 实现的关键技术又是关系系统的优点所在。它减轻了用户选择存取路径的负担。用户只要提出“干什么”,不必指出“怎么干”。查询优化的优点不仅在于用户不必考虑如何最好地表达查询以获得较好的效率,而且在于系统可以

比用户程序的“优化’夕做得更好。

可能性:这是因为: ( l )优化器可以从数据字典中获取许多统计信息,例如关系中的元组数、关系中每个属性值的分布情况、这些属性上是否有索引、是什么索引( B +树索引还是 HASH 索引或惟一索引或组合索引)等。优化器可以根据这些信息选择有效的执行计划,而用户程序则难以获得这些信息。 ( 2 )如果数据库的物理统计信息改变了,系统可以自动对查询进行重新优化以选择相适应的执行计划。在非关系系统中必须重写程序,而重写程序在实际应用中往往是不太可能的。 ( 3 )优化器可以考虑数十甚至数百种不同的执行计划,从中选出较优的一个,而程序员一般只能考虑有限的几种可能性。 ( 4 )优化器中包括了很多复杂的优化技术,这些优化技术往往只有最好的程序员才能掌握。系统的自动优化相当于使得所有人都拥有这些优化技术。

写出 Armstrong 推理规则中自反律、增广律、传递律的形式化定义。

答:自反律:若属性集Y 包含于属性集X,属性集X 包含于U,则X→Y 在R 上成立。(此处X→Y是平凡函数依赖)

增广律:若X→Y 在R 上成立,且属性集Z 包含于属性集U,则XZ→YZ 在R 上成立。 传递律:若X→Y 和 Y→Z在R 上成立,则X →Z 在R 上成立。

简述日志文件的内容。

答:日志文件是用来记录事务对数据库的更新操作的文件。

简述 SQL 中的自主存取控制机制。

答:同一用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,用户还可将其拥有的存取权限转授给其他用户大型数据库管理系统几乎都支持自主存取控制,目前的SQL标准也对自主存取控制提供支持,这主要通过SQL 的GRANT语句和REVOKE语句来实现。

简述数据库中事务的概念及其性质.

答:事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。

事务具有4 个特性:原子性(Atomicity )、一致性(consistency )、隔离性( Isolation )和持续性(Durability )。这4 个特性也简称为ACID 特性。

简述事物的原子性。

答:原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。 简述并发操作带来的三类数据不一致性。

答:并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏’夕数据。 ( l )丢失修改(lost update ) 两个事务 Tl 和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了) Tl 提交的结果,导致 Tl 的修改被丢失。 ( 2 )不可重复读( Non 一 Repeatable Read ) 不可重复读是指事务 Tl 读取数据后,事务几执行更新操作,使 Tl 无法再现前一次读取结果。( 3 )读“脏”数据( Dirty Read ) 读“脏’夕数据是指事务 Tl 修改某一数据,并将其写回磁盘,事务几读取同一数据后, Tl 由于某种原因被撤销,这时 Tl 已修改过的数据恢复原值,几读到的数据就与数据库中的数据不一致,则几读到的数据就为“脏”数据,即不正确的数据。

在数据库中为什么要并发控制?并发控制技术可以保证事务的哪些特征?

答:数据库是共享资源,通常有许多个事务同时在运行。当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性。所以数据库管理系统必须提供并发控制机制 什么是封锁?基本的封锁类型有几种?

答:封锁就是事务 T 在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对

其加锁。加锁后事务 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 锁。这就保证了其他事务可以读 A ,但在 T 释放 A 上的 S 锁之前不能对 A 做任何修改。

简述两段封锁协议的内容。

答:1. 在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁。2. 在释放一个封锁之后,事务不再获得任何其他封锁。

简述数据库系统中活锁和死锁的含义。避免活锁的简单方法是什么?

答:活锁的含义是该等待事务等待时间太长,似乎被锁住了,实际上可能被激活.避免活锁的简单方法是采用先来先服务的策略。当多个事务请求封锁同一数据对象时,封锁子系统按请求封锁的先后次序对事务排队,数据对象上的锁一旦释放就批准申请队列中第一个事务获得锁。

什么叫做数据库的恢复?数据库恢复的基本技术有哪些?

答:数据库恢复是指通过技术手段,将保存在数据库中上丢失的电子数据进行抢救和恢复的技术。1、数据转储 2、登录日志文件

简述数据库系统中可能发生的故障类型,以及数据恢复方法。

答:(1)事务内部的故障;

(2)系统故障;

(3)介质故障;

(4)计算机病毒。

简述“运行记录优先原则”。

答:在数据库系统中,写一个修改到数据库中和写一个表示这个修改的登记记录到日志文件中是两个不同的操作,在这两个操作之间有可能发生故障。这时,如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改,那么以后也就无法撤消这个修改。为了安全起见,采用“运行记录优先原则”。它包括两点:

(1)至少要等相应运行记录已经写入“日志”文件后,才能允许事务往数据库中写记录。

(2)直至事务的所有运行记录都已写入运行“日志”文件后,才能允许事务完成“END TRANSACTION”处理。

简述日志文件内容及其作用。

答:(1)日志文件是用来记录事务对数据库的更新操作的文件。

(2)设立日志文件的目的是:进行事务故障恢复;进行系统故障恢复;协助后备副 本进行介质故障恢复。

简述数据库设计过程。

答:这里只概要列出数据库设计过程的六个阶段: ( l)需求分析; ( 2)概念结构设计; ( 3)逻辑结构设计; ( 4 )数据库物理设计; ( 5 )数据库实施; ( 6 )数据库运行和维护。这是一个完整的实际数据库及其应用系统的设计过程。不仅包括设计数据库本身,还包括数

www.99jianzhu.com/包含内容:建筑图纸、PDF/word/ppt 流程,表格,案例,最新,免费下载,施工方案、工程书籍、建筑论文、合同表格、标准规范、CAD图纸等内容。


TOP最近更新内容

    园林史名词解释
    长城小学关爱留守儿童工作制度
  • 上一篇:食品安全和消费者权益 毕业论文
  • 下一篇:机械设计课设说明书