1数据库原理简答题总结第一章数据库概论1.人工管理阶段数据管理的特点:(1)数据不保存在机器中(2)无专用的软件对数据进行管理(3)只有程序的概念,没有文件的概念(4)数据面向程序2.文件系统阶段数据管理的特点:(1)数据可长期保存在外存的磁盘上(2)数据的逻辑结构和物理结构有了区别(3)文件组织已呈多样化。有索引、链接和散列文件(4)数据不再属于某个特定的程序,可重复使用。3.文件系统显露出三个缺陷:(1)数据冗余性(2)数据不一致性(3)数据联系弱4.数据库阶段的管理方式具有以下特点:(1)采用复杂的数据模型表示数据结构(2)有较高的数据独立性(3)数据库系统为用户提供方便的用户接口(4)系统提供四方面的数据控制功能(5)对数据的操作既可以以记录为单位,又可以以数据项为单位5.数据描述三个领域之间的关系:从事物的特性到计算机中的数据表示,经历了三个领域:现实世界、信息世界、机器世界。(1)现实世界:存在于人们头脑之外的客观世界,称为现实世界。(2)信息世界:是现实世界在人们头脑中的反映。(3)机器世界:信息世界的信息在机器世界中以数据形式存储。信息世界中数据描述的术语有:实体、实体集、属性、实体标识符机器世界中数据描述的术语有:字段、记录、文件、关键码它们的对应关系是:在数据库中每个概念都有类型和值之区分,类型是概念的内涵,值是概念的外延26.数据描述的两种形式:数据描述有物理描述和逻辑描述两种形式。物理数据描述指数据在存储设备上的存储方式,物理数据是实际存放在存储设备上的数据。逻辑数据描述指程序员或用户用以操作的数据形式,是抽象的概念化数据。数据管理软件的功能之一,就是要把逻辑数据转换成物理数据,以及把物理数据转换成逻辑数据。7.物理存储介质层次:8.数据模型的种类:目前广泛使用的数据模型可分为两种类型:概念数据模型、结构数据模型概念数据模型:是独立于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构;它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具;这一类中著名的模型是“实体联系模型”,简称“ER”模型。结构数据模型:是直接面向数据库的逻辑结构;它是现实世界的第二层抽象,涉及到计算机系统和数据库管理系统;这一类中的例子有层次、网状、关系、面向对象等模型。9.结构数据模型的三个组成部分:数据结构、数据操作、数据完整性约束是结构数据模型的三个组成部分。数据结构:是指对实体类型和实体间联系的表达和实现数据操作:是指对数据库的检索和更新(插、删、改)两类操作的实现数据完整性约束:给出数据及其联系应具有的制约和依赖规则。10.层次模型的特点:用树型结构表示实体类型及实体间联系的数据模型称为层次模型。层次模型的特点是:记录之间的联系通过指针实现,查询效率较高。缺点是:(1)只能表示1:N联系(2)由于树型结构层次顺序的严格复杂,引起数据的查询和更新操作也很复杂,因此编写应用程序也很复杂。11.网状模型的特点:用有向图结构表示实体类型及实体间联系的数据模型称为网状模型。网状模型的特点是:记录之间联系通过指针实现,M:N联系也容易实现,查询效率较高。缺点是:编写应用程序比较复杂,程序员必须熟悉数据库的逻辑结构。312.关系模型的特点:关系模型的主要特征是用二维表格结构表达实体集,用外键表示实体间联系。特点是:关系模型与层次、网状的最大差别是用关键码而不是用指针导航数据,表格简单,用户易懂,编程时不涉及存储结构、访问技术等细节。13.数据库体系结构中的三级结构、两级映象:数据库的体系结构分为三级:内部级、概念级、外部级。外部级:最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。概念级:涉及到所有用户的数据定义,是全局的数据视图。全局数据视图的描述称为“概念模式”。内部级:最接于物理存储设备,涉及到实际数据存储的结构。物理存储数据视图的描述称为“内模式”。为实现这三个抽象级别的联系和转换,DBMS在级级结构之间提供两个层次的映象:外模式/模式映象,模式/内模式映象。14.二级数据独立性:数据独立性是指:应用程序和数据之间相互独立,不受影响。分为物理独立性和逻辑独立性。(1)物理数据独立性:如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。也就是对内模式的修改尽量不影响概念模式。(2)逻辑数据独立性:如果数据库的概念模式要进行修改,如增加记录类型或增加数据项,那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。也就是概念模式的修改尽量不影响外模式和应用程序。15.DBMS的主要功能:(1)数据库的定义功能:DBMS提供数据定义语言(DDL)定义数据库的三级结构及其相互之间的映象、完整性、安全控制等约束。(2)数据库的操纵功能:DBMS提供数据操纵语言(DML)实现对数据库中数据的操作。(3)数据库的保护功能:DBMS对数据库的保护主要通过数据库的恢复、数据库的并发控制、数据库的完整性控制、数据库的安全性控制等四个方面实现。(4)数据库的存储管理:DBMS的存储管理子系统提供了数据库中数据和应用程序的一个界面,其职责是把各种DML语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。(5)数据库的维护功能:DBMS中实现数据库维护功能的实用程序主要有数据装载程序、备份程序、文件重组织程序、性能监控程序。(6)数据字典(DD):数据库系统中存放三级结构定义的数据库称为数据字典,对数据库的操作都要通过访问DD才能实现。16.DBMS的组成:DBMS是由两大部分组成:查询处理器和存储管理器。(1)查询处理器有四个主要成分:DDL编译器、DML编译器、嵌入型DML的预编译器、查询运行核心程序。4(2)存储管理器有四个主要成分:授权和完整性管理器、事务管理器、文件管理器、缓冲区管理器。17.DBS的组成:DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是数据库、硬件、软件、数据库管理员(DBA)的集合体。(1)数据库(DB):是与一个特定组织各项应用有关的全部数据的集合,由应用数据的集合(物理数据库)、关于各级数据结构的描述(描述数据库)两部分组成。(2)硬件:包括中央处理机、内存、输入输出设备、数据通道等硬件设备。(3)软件:包括DBMS、OS、各种宿主语言和应用开发支持软件等程序。(4)DBA:DBA是控制数据整体结构的人,负责DBS的正常运行。18.DBS的全局结构:(1)数据库用户。可分为四类:DBA、专业用户、应用程序员、终端用户(2)DBMS的查询处理器。包括四部分:DML编译器、嵌入型DML的预编译器、DLL编译器、查询运行核心程序。(3)DBMS的存储管理器。包括四部分:授权和完整性管理器、事务管理器、文件管理器、缓冲区管理器。(4)磁盘存储器中的数据结构。包括四种形式:数据文件、数据字典、索引文件、统计数据组织。第二章关系模型19.超键、主键、候选键的定义:超键(superkey):在关系中能唯一标识元组的属性集称为关系模式的超键。候选键(candidatekey):不含有多余属性的超键称为候选键。(候选键可以有多个)主键(primarykey):用户选作元组标识的一个候选键称为主键。(主键是候选键中一个)20.关系模式、关系子模式和存储模式:关系模型基本上遵循数据库的三级体系结构。概念模式是关系模式的集合,外模式是关系子模式的集合,内模式是存储模式的集合。(1)关系模式:关系模式实际上是记录类型。它的定义包括:模式名,属性名,值域名以及模式的主键。(2)关系子模式:是用户所用到的那部分数据的描述。除了指出用户的数据外,还应指出模式与子模式之间的对应性。(3)存储模式:关系存储时的基本组织方式是文件,元组是文件中的记录。存储一个关系可以用散列方法或索引方法实现。如果关系中元组数目较少,也可以用堆文件方式实现。21.关系模型的三类完整性规则:(1)实体完整性规则:这条规则要求关系中元组在组成主键的属性上不能有空值。(2)参照完整性规则:这条规则要求“不引用不存在的实体”。(3)用户定义的完整性规则:它反映某一具体应用涉及的数据必须满足的语义要求。522.参照完整性规则的形式定义:如果属性集K是关系模式R1的主键,K也是关系模式R2的外键,那么在R2的关系中,K的取值只允许两种可能,或者为空,或者等于R1关系中某个主键值。此规则使用时还要注意三点:(1)外键和相应的主键可以不同名,只要定义在相同值域上即可。(2)R1和R2也可以是同一个关系模式,表示了属性之间的联系。(3)外键值是否允许空,应视具体问题而定。上述形式定义中,关系模式R1称为“参照关系”模式,R2称为“依赖关系”模式。23.关系模型的形式定义:24.关系查询语言根据其理论基础的不同分为哪两类:关系代数语言:查询操作是以集合操作为基础运算的DML语言。(非过程性弱)关系演算语言:查询操作是以谓词演算为基础运算的DML语言。(非过程性强)25.关系代数中的操作有哪些?关系代数中的操作可分为两类:传统的集合操作:并、差、交、笛卡尔积扩充的集合操作:对关系进行垂直分割(投影)、水平分割(选择),关系的结合(联接、自然联接),笛卡尔积的逆运算(除法)等。其中五个基本操作为:并、差、笛卡尔积、投影、选择。四个常用组合操作为:交、连接、自然连接、除法两种扩充的关系代数操作为:外连接和外部并26.关系演算有哪两种:关系演算可分为元组关系演算和域关系演算。前者以元组为变量,后者以属性(域)为变量。27.什么是约束变量、自由变量:628.什么是安全运算:在数据库技术中,不产生无限关系和无穷验证的运算称为安全运算,相应的表达式称为安全表达式,所采取的措施称为安全约束。在关系演算中约定,运算只对表达式中公式在涉及到的关系的值范围内操作。这样就不会产生无限关系和无穷验证问题,关系演算是安全的。29.为什么要对关系代数表达式进行优化:查询优化是由DBMS对关系代数表达式进行优化组合,以提高DBMS的系统效率。要对关系代数进行优化的原因是:由于关系代数表达式是由关系代数操作组合而成。在关系代数操作中,执行笛卡尔积和联接运算最费时间,并且在执行过程中将产生大量的中间结果,以使系统执行效率较低。在执行前,由DBMS查询处理子系统先对关系代数表达式进行优化,尽可能早地执行选择和投影操作,以得到较小的中间关系,减少运算量和读外存块的次数,节省系统的执行时间,提高执行效率。30.简述查询优化的优化策略:(1)在关系代数表达式中尽可能早地执行选择操作。(2)把笛卡尔积和随后的选择操作合并成F联接运算。(3)同时计算一连串的选择和投影操作,以免分开运算造成多次扫描文件,从而能节省操作时间。(4)如果在一个表达式中多次出现某个子表达式,应该将该子表达式预先计算出结果保存起来。以免重复计算。(5)适当的对关系文件进行预处理。(6)在计算表达式之前应先估计一下怎么计算合算。31.笛卡尔积、等值连接、自然连接三者之间有什么区别:等值连接中有笛卡尔积运算;自然连接是一种等值连接,它是两个关系中所有公共属性进行等值连接的结果。第三章关系数据库SQL语言32.SQL数据库的体系结构及术语:SQL数据库的体系结构也是三级,但术语与传统的关系模型不同。关系模式称为“基本表”,存储模式称为“存储文件”,子模式称为“视图”,元组称为“行”,属性称为“列”。33.SQL数据库的体系结构要点是什么:(1)一个SQL数据库是表(table)的汇集,它用一个或多个SQL模式定义。一个SQL模式是表和授权的表态定义。(2)一个SQL表由行集构成,一行是列的序列,每列对应一个数据项。(3)一个表或者是一个基本表,或者是一个视图。(视图只保存定义,不保存数据)(4)一个基本表可跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储器上一个物理文件对应。(5)用户可用SQL语句对