数据库系统概论简答.docx
《数据库系统概论简答.docx》由会员分享,可在线阅读,更多相关《数据库系统概论简答.docx(23页珍藏版)》请在冰豆网上搜索。
数据库系统概论简答
第1章绪论
1.试述数据、数据库、数据库系统、数据库管理系统的概念。
答:
(1)数据:
描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
(2)数据库:
数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
(3)数据库系统:
数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
(4)数据库管理系统(简称DBMs):
数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
2.使用数据库系统有什么好处?
答:
使用数据库系统的好处是由特点或优点决定的。
可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担,等等。
还有,当应用逻辑改变,数据的逻辑结构也需要改变时,由于数据库系统提供了数据与程序之间的独立性,数据逻辑结构的改变是DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序,从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。
使用数据库系统可以减轻数据库系统管理人员维护系统的负担。
3.试述文件系统与数据库系统的区别和联系。
答:
文件系统与数据库系统的区别是:
文件系统面向某一应用程序,共享性差,冗余度大,数据独立性差,记录内有结构,整体无结构,由应用程序自己控制。
数据库系统面向现实世界,共享性高,冗余度小,具有较高的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据的安全性、完整性、并发控制和恢复能力。
文件系统与数据库系统的联系是:
文件系统与数据库系统都是计算机系统中管理数据的软件。
解析文件系统是操作系统的重要组成部分;而DBMS是独立于操作系统的软件。
但是DBMS是在操作系统的基础上实现的;数据库中数据的组织和存储是通过操作系统中的文件系统来实现的。
4.举出适合用文件系统而不是数据库系统的例子;再举出适合用数据库系统的应用例子。
答:
(1)适用于数据的备份、临时数据存储。
早期功能比较简单的应用系统也适合用文件系统。
(2)适用于数据库系统而非文件系统的应用例子:
目前,几乎所有企业或部门的信息系统都以数据库系统为基础,都使用数据库。
例如,一个工厂的管理信息系统
5.试述数据库系统的特点。
答:
数据库系统的主要特点有:
(1)数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
(2)数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,因此可以被多个用户、多个应用以多种不同的语言共享使用。
(3)数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。
(4)数据由DBMS统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。
6.数据库管理系统的主要功能有哪些?
答:
(1)数据库定义功能;
(2)数据存取功能;
(3)数据库运行管理;
(4)数据库的建立和维护功能。
7.试述数据模型的概念、数据模型的作用和数据模型的三个要素。
答:
数据模型是严格定义的概念的集合。
通常由数据结构、数据操作和完整性约束三部分组成。
(1)数据结构:
是所研究的对象类型的集合,是对系统静态特性的描述。
(2)数据操作:
是指对数据库中各种对象(型)的实例(值)允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。
(3)数据的约束条件:
是一组完整性规则的集合。
数据模型是数据库系统的基础。
根据模型应用的不同目的,可以将模型分成两类或者说两个层次:
一类是概念模型,用于信息世界的建模,概念简单清晰;另一类是数据模型,用于机器世界,一般需要有严格的形式化定义和一组严格定义了语法和语义的语言。
8.试述概念模型的作用。
答:
概念模型用于信息世界的建模,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。
9.试述网状、层次数据库的优缺点。
答:
层次模型的优点主要有:
(1)模型简单
(2)用层次模型的应用系统性能好(3)层次数据模型提供了良好的完整性支持。
层次模型的缺点主要有:
(1)现实世界中很多联系是非层次性的,层次模型不能自然地表示这类联系;
(2)对插入和删除操作的限制比较多;(3)查询子女结点必须通过双亲结点。
网状数据模型的优点主要有:
(1)能够更为直接地描述现实世界
(2)存取效率较高。
网状数据模型的缺点主要有:
(1)结构比较复杂;
(2)语言复杂,用户不容易使用。
10.试述关系模型的概念,定义并解释以下术语:
①关系②属性③域④元组⑤主码⑥分量⑦关系模式
答:
关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。
①关系:
一个关系对应通常说的一张表;②属性:
表中的一列即为一个属性;③域:
属性的取值范围;④元组:
表中的一行即为一个元组;⑤主码:
表中的某个属性组,它可以惟一确定一个元组;⑥分量:
元组中的一个属性值;⑦关系模式:
对关系的描述,一般表示为关系名(属性1,属性2,…,属性n)
11.试述关系数据库的特点。
答:
关系数据模型具有下列优点:
(1)是建立在严格的数学概念的基础上的。
(2)关系模型的概念单一。
(3)用户透明,具有更高的数据独立性、更好的安全保密性,也简化工作。
查询效率往往不如非关系数据模型。
优化,增加难度。
12.试述数据库系统三级模式结构,这种结构的优点是什么?
答:
数据库系统的三级模式结构由外模式、模式和内模式组成。
外模式,是数据库用户的数据视图,模式,亦称逻辑模式,是所有用户的公共数据视图。
模式描述的是数据的全局逻辑结构。
外模式涉及的是数据的局部逻辑结构,通常是模式的子集。
内模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
数据库系统的三级模式使用户能逻辑抽象地处理数据,数据库系统在这三级模式之间提供了两层映像:
外模式/模式映像和模式/内模式映像。
正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
13.DDL:
数据定义语言,用来定义数据库模式、外模式、内模式的语言。
DML:
数据操纵语言,用来对数据库中的数据进行查询、插入、删除和修改的语句。
14.什么叫数据与程序的物理独立性?
什么叫数据与程序的逻辑独立性?
为什么数据库系统具有数据与程序的独立性?
答:
数据与程序的逻辑独立性:
当模式改变时,外模式保持不变,应用程序是依据数据的外模式编写的,从而应用程序不必修改。
数据与程序的物理独立性:
当数据库的存储结构改变了,可以使模式保持不变,从而应用程序也不必改变。
15.DBA的职责是什么?
答:
负责全面地管理和控制数据库系统。
具体职责包括:
①决定数据库的信息内容和结构;②决定数据库的存储结构和存取策略;③定义数据的安全性要求和完整性约束条件;④监督和控制数据库的使用和运行;⑤改进和重组数据库系统。
16.系统分析员、数据库设计人员、应用程序员的职责是什么?
答系统分析员负责应用系统的需求分析和规范说明,参与数据库系统的概要设计。
数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。
第2章关系数据库
1.试述关系模型的三个组成部分。
答:
关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
2.试述关系数据语言的特点和分类。
答:
关系数据语言可以分为三类:
关系代数语言。
关系演算语言:
元组关系演算语言和域关系演算语言。
SQL:
具有关系代数和关系演算双重特点的语言。
这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。
3.试述关系模型的完整性规则。
在参照完整性中,为什么外部码属性的值也可以为空?
什么情况下才可以为空?
答:
实体完整性规则是指若属性是基本关系的主属性,则属性不能取空值。
若属性是基本关系的外码,它与基本关系的主码相对应,则对于R中每个元组在F上的值必须为:
或者取空值,或者等于S中某个元组的主码值。
即属性F本身不是主属性,则可以取空值,否则不能取空值。
4.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:
1)求供应工程J1零件的供应商号码SNO:
πSno(σSno=‘J1’(SPJ))
2)求供应工程J1零件P1的供应商号码SNO:
πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ))
3)求供应工程J1零件为红色的供应商号码SNO:
πSno(σPno=‘P1‘(σCOLOR=’红‘(P)∞SPJ))
4)求没有使用天津供应商生产的红色零件的工程号JNO:
πJno(SPJ)-πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)
5)求至少用了供应商S1所供应的全部零件的工程号JNO:
πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ))
5.试述等值连接与自然连接的区别和联系。
答:
连接运算符是“=”的连接运算称为等值连接。
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。
6.关系代数的基本运算有哪些?
如何用这些基本运算来表示其他运算?
答:
并、差、笛卡尔积、投影和选择5种运算为基本的运算。
其他3种运算,即交、连接和除,均可以用这5种基本运算来表达。
第4章数据库安全性
1.什么是数据库的安全性?
答:
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
2.举例说明数据安全性产生威胁的因素
非授权用户对数据库的恶意存取和破坏
数据库中重要或敏感的数据被泄露
安全环境的脆弱性
3.数据库安全性和计算机系统的安全性有什么关系?
答:
安全性问题不是数据库系统所独有的,用户直接共享,从而使安全性问题更为突出。
系统安全保护措施是否有效是数据库系统的主要指标之一。
数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的,
4.试述实现数据库安全性控制的常用方法和技术。
答:
实现数据库安全性控制的常用方法和技术有:
(1)用户标识和鉴别
(2)存取控制
(3)视图机制
(4)审计
(5)数据加密
5.什么是数据库中的自主存取控制方法和强制存取控制方法?
答:
自主存取控制方法:
当用户对数据库访问时首先检查用户的存取权限。
防止不合法用户对数据库的存取。
强制存取控制方法:
系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。
6.为什么强制存取控制提供了更高级别的数据库安全性?
答:
强制存取控制(MAC)是对数据本身进行密级标记,无论数据如何复制,标记与数据是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别的安全性。
7.理解并解释MAC机制中主体、客体、敏感度标记的含义。
答:
主体是系统中的活动实体,包括实际用户以及用户的各进程。
客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。
对于主体和客体,DBMS为它们指派一个敏感度标记。
敏感度标记被分成若干级别,例如绝密、机密、可信、公开等。
主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级。
8.什么是数据库的审计功能,为什么要提供审计功能?
答:
审计功能是指DBMS的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。
因为任何系统的安全保护措施都不是完美无缺的。
利用数据库的审计功能,DBA可以重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。
9.统计数据库中存在何种特殊的安全性问题?
答:
统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等,不允许查询单个记录信息。
但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。
第7章数据库设计
1.试述数据库设计过程。
答:
这里只概要列出数据库设计过程的六个阶段:
(1)需求分析;
(2)概念结构设计;(3)逻辑结构设计;(4)数据库物理设计;(5)数据库实施;(6)数据库运行和维护。
这是一个完整的实际数据库及其应用系统的设计过程。
不仅包括设计数据库本身,还包括数据库的实施、运行和维护。
设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。
2.试述数据库设计过程各个阶段上的设计描述。
答:
各阶段的设计要点如下:
(1)需求分析:
准确了解与分析用户需求(包括数据与处理)。
(1)概念结构设计:
通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
(3)逻辑结构设计:
将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
(4)数据库物理设计:
为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
(5)数据库实施:
设计人员运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
(6)数据库运行和维护:
在数据库系统运行过程中对其进行评价、调整与修改。
3.试述数据库设计过程中结构设计部分形成的数据库模式。
答:
数据库结构设计的不同阶段形成数据库的各级模式,即:
(1)E一R图;
(2)将E一R图转换成数据模型,如关系模型,然后再建立必要的视图,形成数据的外模式;(3)根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。
4.试述数据库设计的特点。
答:
数据库设计既是一项涉及多学科的综合性技术又是一项庞大的工程项目。
其主要特点有:
(1)数据库建设是硬件、软件和干件的结合。
(2)数据库设计应该和应用系统设计相结合
5.需求分析阶段的设计目标是什么?
调查的内容是什么?
答:
需求分析阶段的设计目标是通过详细调查对象,了解工作概况,明确用户需求,然后在此基础上确定新系统的功能。
调查的内容是“数据’和“处理”,即获得用户对数据库的如下要求:
(1)信息要求
(2)处理要求(3)安全性与完整性要求。
6.数据字典的内容和作用是什么?
答:
数据字典是系统中各类数据描述的集合。
数据字典的内容通常包括:
(1)数据项;
(2)数据结构;(3)数据流;(4)数据存储;(5)处理过程五个部分。
其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。
数据字典描述数据流和数据存储的逻辑内容。
数据字典的作用:
数据字典是关于数据库中数据的描述,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充实、完盖。
7.什么是数据库的概念结构?
试述其特点和设计策略。
答:
概念结构是信息世界的结构,即概念模型,其主要特点是:
(1)能真实反映现实世界,能满足用户要求
(2)易于理解(3)易于更改(4)易于向关系、网状、层次等各种数据模型转换。
概念结构的设计策略通常有四种:
(1)自顶向下,全局到细化
(2)自底向上局部到全局(3)逐步扩张,首先定义核心概念结构,然后向外扩充(4)混合策略,即将自顶向下和自底向上相结合
8.什么叫数据抽象?
试举例说明。
答:
数据抽象是对实际的人、物、事和概念进行人为处理,抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述,这些概念组成了某种模型。
如“分类’夕这种抽象是:
定义某一类概念作为现实世界中一组对象的类型。
这些对象具有某些共同的特性和行为。
它抽象了对象值和型之间的,'i5memberof”的语义。
在E一R模型中,实体型就是这种抽象。
例如在学校环境中,李英是老师,表示李英是教师类型中的一员,则教师是实体型,李英是教师实体型中的一个实体值,具有教师共同的特性和行为:
在某个系某个专业教学,讲授某些课程,从事某个方向的科研。
9.试述数据库概念结构设计的重要性和设计步骤。
答:
重要性:
数据库概念设计是整个数据库设计的关键,将在需求分析阶段所得到的应用需求首先抽象为概念结构,以此作为各种数据模型的共同基础,从而能更好地、更准确地用某一DBMS实现这些需求。
设计步骤:
概念结构的设计方法有多种,其中最经常采用的策略是自底向上方法,该方法的设计步骤通常分为两步:
第1步是抽象数据并设计局部视图,第2步是集成局部视图,得到全局的概念结构。
10.为什么要视图集成?
视图集成的方法是什么?
答:
在对数据库系统进行概念结构设计时一般采用自底向上的设计方法,把繁杂的大系统分解子系统。
首先设计各个子系统的局部视图,然后通过视图集成的方式将各子系统有机地融合起来,综合成一个系统的总视图。
这样,设计清晰,由简到繁。
由于数据库系统是从整体角度看待和描述数据的,因此数据不再面向某个应用而是整个系统。
因此必须进行视图集成,使得数据库能被全系统的多个用户、多个应用共享使用。
一般说来,视图集成可以有两种方式:
(1)多个分E一R图一次集成;
(2)逐步集成,用累加的方式一次集成两个分E一R图。
无论采用哪种方式,每次集成局部E一R图时都需要分两步走:
(1)合并,解决各分E一R图之间的冲突,将各分E一R图合并起来生成初步E一R图;
(2)修改和重构,消除不必要的冗余,生成基本E一R图。
11.什么是数据库的逻辑结构设计?
试述其设计步骤。
答:
数据库的逻辑结构设计就是把E一R图转换为与逻辑结构。
设计步骤为:
(1)将概念结构转换为一般的关系、网状、层次模型;)
(2)将转换来的关系、网状、层次模型向数据模型转换;(3)对数据模型进行优化。
14.规范化理论对数据库设计有什么指导意义?
答:
规范化理论为数据库设计人员判断关系模式的优劣提供了理论标准,可以指导关系数据模型的优化,用来预测模式可能出现的问题,为设计人员提供了自动产生各种模式的算法工具,使数据库设计工作有了严格的理论基础。
15.试述数据库物理设计的内容和步骤。
答:
数据库在物理设备上的存储结构与存取方法称为数据库的物理结构。
为逻辑数据模型选取一个最适合要求的物理结构,就是数据库的物理设计的主要内容。
数据库的物理设计步骤通常分为两步:
(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;
(2)对物理结构进行评价,评价的重点是时间效率和空间效率。
16.数据输入在实施阶段的重要性是什么?
如何保证输入数据的正确性?
答:
数据库是用来对数据进行存储、管理与应用的,数据量一般都很大,而且数据来源复杂。
数据的组织方式、结构和格式都与新设计的数据库系统有相当的差距,组织数据录入就要将各类源数据分类转换,最后综合成符合新设计的数据库结构的形式,输入数据库。
因此这样的数据转换是相当费力费时的工作。
保证输入数据正确性的方法:
为提高数据输入工作的效率和质量,应该针对具体的应用环境设计一个数据录入子系统,由计算机来完成数据入库的任务。
在源数据入库之前要采用多种方法对它们进行检验,以防止不正确的数据入库。
17.什么是数据库的再组织和重构造?
为什么要进行数据库的再组织和重构造?
答:
数据库的再组织是指:
按原设计要求重新安排存储位置、回收垃圾、减少指针链等,以提高系统性能。
数据库的重构造则是指部分修改数据库的模式和内模式。
数据库的再组织是不修改数据库的模式和内模式的。
进行数据库的再组织和重构造的原因:
数据库运行一段时间后,数据的存取效率降低,数据库性能下降,这时就要对数据库进行重组织。
DBMS一般都提供用于数据重组织的实用程序。
数据库应用环境常常发生变化,使原有的数据库设计不能满足新的需求,需要调整数据库的模式和内模式。
这就要进行数据库重构造。
第10章数据库恢复技术
1.试述事务的概念及事务的4个特性。
答:
事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。
事务具有4个特性:
原子性、一致性、隔离性和持续性。
原子性:
事务是数据库的逻辑工作单位。
一致性:
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
隔离性:
一个事务的执行不能被其他事务干扰。
持续性:
指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。
接下来的其他操作或故障无有任何影响。
2.为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。
答:
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这时数据库就处于一种不一致的状态。
例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。
则可以定义一个事务T,T包括两个操作;Ql=Ql一Q,Q2=Q2+Q。
如果T非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。
3.数据库中为什么要有恢复子系统?
它的功能是什么?
答:
因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此必须要有恢复子系统。
恢复子系统的功能是:
把数据库从错误状态恢复到某一已知的正确状态
4.数据库运行中可能产生的故障有哪几类?
哪些故障影响事务的正常执行?
哪些故障破坏数据库数据?
答:
数据库系统中可能发生各种各样的故障,大致可以分以下几类:
(1)事务内部的故障;
(2)系统故障;
(3)介质故障;
(4)计算机病毒。
事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。
5.数据库恢复的基本技术有哪些?
答:
数据转储和登录日志文件是数据库恢复的基本技术。
当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。
6.数据库转储的意义是什么?
试比较各种数据转储方法。
答:
数据转储是数据库恢复中采用的基本技术。
所谓转储即定期地将数据库复制保存。
当数据库遭到破坏后可以将后备副本重新装入,将数据库恢复到转储时的状态。
静态转储:
在系统中无运行事务时进行的转储操作,静态转储简单,但必须等待正运行的用户事务结束才能进行。
显然,这会降低数据库的可用性。
动态转储:
指转储期间允许对数据库进行存取或修改。
动态转储可克服静态转储的缺点,它不用等待正在运行的用户事务结束,也不会影响新事务的运行。
但是,转储结束时后援副本上的数据并不能保证正确有效。
转储还可以分为海量转储和增量转储两种方式。
海量转储是指每次转储全部数据库。
增量转储则指每次只转储上一次转储后更新过的数据。
从恢复角度看,使用海量转储得到的后备副本进行恢复一般说来更简单些。
但如果数据库很大,则增量转储方式更实用更有效。
7.什么是日志文件?
为什么要设立日志文件?
答:
(1)日志文件是用来记录事务对数据库的更新操作的文件。
(2)设立日志文件的目的是:
进行事务故障恢复;进行系统故障恢复;协助后备副本进行介质故障恢复。
8.登记日志文件时为什么必须先写日志文件,后写数据库?
答:
把