数据库技术复习简答题.docx
- 文档编号:11980351
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:28
- 大小:56.50KB
数据库技术复习简答题.docx
《数据库技术复习简答题.docx》由会员分享,可在线阅读,更多相关《数据库技术复习简答题.docx(28页珍藏版)》请在冰豆网上搜索。
数据库技术复习简答题
第一章绪论
1.人工管理阶段数据管理的特点:
(1)数据不保存在机器中
(2)无专用的软件对数据进行管理
(3)只有程序的概念,没有文件的概念
(4)数据面向程序
2.文件系统阶段数据管理的特点:
(1)数据可长期保存在外存的磁盘上
(2)数据的逻辑结构和物理结构有了区别
(3)文件组织已呈多样化。
有索引、链接和散列文件
(4)数据不再属于某个特定的程序,可重复使用。
3.文件系统显露出三个缺陷:
(1)数据冗余性
(2)数据不一致性
(3)数据联系弱
4.数据库阶段的管理方式具有以下特点:
(1)采用复杂的数据模型表示数据结构
(2)有较高的数据独立性
(3)数据库系统为用户提供方便的用户接口
(4)系统提供四方面的数据控制功能
(5)对数据的操作既可以以记录为单位,又可以以数据项为单位
5.数据描述三个领域之间的关系:
从事物的特性到计算机中的数据表示,经历了三个领域:
现实世界、信息世界、机器世界。
(1)现实世界:
存在于人们头脑之外的客观世界,称为现实世界。
(2)信息世界:
是现实世界在人们头脑中的反映。
(3)机器世界:
信息世界的信息在机器世界中以数据形式存储。
信息世界中数据描述的术语有:
实体、实体集、属性、实体标识符
机器世界中数据描述的术语有:
字段、记录、文件、关码码
它们的对应关系是:
在数据库中每个概念都有类型和值之区分,类型是概念的内涵,值是概念的外延
6.数据描述的两种形式:
数据描述有物理描述和逻辑描述两种形式。
物理数据描述指数据在存储设备上的存储方式,物理数据是实际存放在存储设备上的数据。
逻辑数据描述指程序员或用户用以操作的数据形式,是抽象的概念化数据。
数据管理软件的功能之一,就是要把逻辑数据转换成物理数据,以及把物理数据转换成逻辑数据。
7.数据模型的种类:
目前广泛使用的数据模型可分为两种类型:
概念数据模型、结构数据模型
概念数据模型:
是独立于计算机系统的模型,完全不涉及信息在系统中的表示,
只是用来描述某个特定组织所关心的信息结构;
它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具;
这一类中著名的模型是“实体联系模型”,简称“ER”模型。
它是P.P.S.chen1976年提出的。
结构数据模型:
是直接面向数据库的逻辑结构;
它是现实世界的第二层抽象,涉及到计算机系统和数据库管理系统;
这一类中的例子有层次、网状、关系、面向对象等模型。
8.结构数据模型的三个组成部分:
数据结构、数据操作、数据完整性约束是结构数据模型的三个组成部分。
数据结构:
是指对实体类型和实体间联系的表达和实现
数据操作:
是指对数据库的检索和更新(插、删、改)两类操作的实现
数据完整性约束:
给出数据及其联系应具有的制约和依赖规则。
9.层次模型的特点:
用树型结构表示实体类型及实体间联系的数据模型称为层次模型。
层次模型的特点是:
记录之间的联系通过指针实现,查询效率较高。
缺点是:
(1)无法直接表达多对多的联系
(2)由于树型结构层次顺序的严格复杂,引起数据的查询和更新操作也很复杂,
因此编写应用程序也很复杂。
10.网状模型的特点:
用有向图结构表示实体类型及实体间联系的数据模型称为网状模型。
网状模型的特点是:
记录之间联系通过指针实现,M:
N联系也容易实现,
查询效率较高。
缺点是:
编写应用程序比较复杂,程序员必须熟悉数据库的逻辑结构。
11.关系模型的特点:
关系模型的主要特征是用二维表格结构表达实体集,用外部码表示实体间联系。
特点是:
关系模型与层次、网状的最大差别是用关键码而不是用指针导航数据,
表格简单,用户易懂,编程时不涉及存储结构、访问技术等细节。
缺点:
用户模式对用户是透明的,存取效率可能不是很高,要进行优化。
12.数据库体系结构中的三级结构、两级映象:
数据库的体系结构分为三级:
内部级、概念级、外部级。
外部级:
最接近用户,是单个用户所能看到的数据特性。
单个用户使用的数据视图的描述称为“外模式”或叫“子模式”。
一个系统由若干子模式。
概念级:
涉及到所有用户的数据定义,是全局的数据视图。
全局数据视图的描述称为“概念模式”,全局逻辑结构。
一个系统只有一个概念模式。
内部级:
最接于物理存储设备,涉及到实际数据存储的结构。
物理存储数据视图的描述称为“内模式”或存储模式或物理模式。
一个系统只有一个内模式。
为实现这三个抽象级别的联系和转换,
DBMS在级级结构之间提供两个层次的映象:
外模式/模式映象,模式/内模式映象。
在数据库三级模式间引入二级映象的主要作用是为了提高数据与程序的独立性。
13.二级数据独立性:
数据独立性是指:
应用程序和数据之间相互独立,不受影响。
分为物理独立性和逻辑独立性。
(1)物理数据独立性:
如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相应的修改,使概念模式尽可能保持不变。
也就是对内模式的修改尽量不影响概念模式。
(2)逻辑数据独立性:
如果数据库的概念模式要进行修改,如增加记录类型或增加数据项,那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。
也就是概念模式的修改尽量不影响外模式和应用程序。
14.DBMS的主要功能:
数据库管理系统是位于用户与操作系统之间的一层数据管理软件。
功能有:
(1)数据库的定义功能:
DBMS提供数据定义语言(DDL)定义数据库的三级结构及其相互之间的映象、完整性、安全控制等约束。
(2)数据库的操纵功能:
DBMS提供数据操纵语言(DML)实现对数据库中数据的操作。
(3)数据库的事务管理和运行管理:
DBMS对数据库的保护主要通过数据库的恢复、数据库的并发控制、数据库的完整性控制、数据库的安全性控制等四个方面实现。
(4)数据的组织、存储和管理:
DBMS的存储管理子系统提供了数据库中数据和应用程序的一个界面,其职责是把各种DML语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。
(5)数据库的建立和维护功能:
DBMS中实现数据库维护功能的实用程序主要有数据装载程序、备份程序、文件重组织程序、性能监控程序。
(6)其他功能,如网络通信功能,与异构数据库之间的互访问和互操作功能:
15.DBS的组成:
DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是数据库、硬件、软件、数据库管理员(DBA)及其他人员(专业用户、应用程序员、终端用户)等的集合体。
(1)数据库(DB):
是与一个特定组织各项应用有关的全部数据的集合,由应用数据的集合(物理数据库)、关于各级数据结构的描述(描述数据库)两部分组成。
(2)硬件:
包括中央处理机、内存、输入输出设备、数据通道等硬件设备。
(3)软件:
包括DBMS、OS、各种宿主语言和应用开发支持软件等程序。
(4)DBA:
DBA是控制数据整体结构的人,负责DBS的正常运行,对DB经常性的维护工作等。
16.概念模型的作用?
常用什么来刻画概念模型?
刻画概念模型的工具有什么要求?
属于信息世界的模型,实际上是现实世界到机器世界的一个中间层次。
17.注意区分数据库、数据库管理系统、数据库系统3个概念,它们的联系和区别。
第二章关系数据库
1.主码、候选码的定义:
候选码(candidatekey):
具有标识性、最小性的属性或属性组合称为候选码。
(候选码可以有多个)
主码(primarykey):
用户选作元组标识的一个候选码称为主码。
(主码是候选码中一个)
2.关系模式、关系子模式和存储模式:
关系模型基本上遵循数据库的三级体系结构。
概念模式是关系模式的集合,外模式是关系子模式的集合,内模式是存储模式的集合。
(1)关系模式:
关系模式实际上是记录类型。
它的定义包括:
模式名,属性名,值域名以及模式的主码等。
(2)关系子模式:
是用户所用到的那部分数据的描述。
除了指出用户的数据外,还应指出模式与子模式之间的对应性。
(3)存储模式:
关系存储时的基本组织方式是文件,元组是文件中的记录。
存储一个关系可以用散列方法或索引方法实现。
如果关系中元组数目较少,也可以用堆文件方式实现。
3.关系模型的三类完整性规则:
(1)实体完整性规则:
这条规则要求关系中元组在组成主码的属性上不能有空值或部分为空。
(2)参照完整性规则:
这条规则要求“不引用不存在的实体”。
(3)用户定义的完整性规则:
它反映某一具体应用涉及的数据必须满足的语义要求。
4.参照完整性规则的形式定义:
如果属性集K是关系模式R1的主码,K也是关系模式R2的外部码(注意外部码的定义?
),那么在R2的关系中,K的取值只允许两种可能,或者为空,或者等于R1关系中某个主码值。
此规则使用时还要注意三点:
(1)外部码和相应的主码可以不同名,只要定义在相同值域上即可。
(2)R1和R2也可以是同一个关系模式,表示了同一关系模式的属性之间的联系。
(3)外部码值是否允许空,应视具体问题而定。
上述形式定义中,关系模式R1称为“参照关系”模式,R2称为“依赖关系”模式。
5.关系模型的形式定义:
6.基本关系的性质有哪些?
当关系作为关系数据模型的数据结构时,有如下的限定和扩充:
(1)无限关系在数据库系统中是无意义的。
即在关系数据模型中的关系必须是有限集合。
(2)通过对关系的每列附加一个属性名的方法取消了关系中属性的有序性,即(d1,d2,…,di,dj,…,dn)=(d1,d2,…,dj,di,…,dn)其中(i,j=1,2,…,n)
因此基本关系具有如下6点性质:
(1)列是同质的(homogeneous),同一列的数据取自同一个域;
(2)不同的列可以出自同一个域,即可以有相同的数据类型,所以每一列要给与不同的属性名;
(3)列的次序是可以交换的,即交换次序后的关系与原关系是同一个关系;
(4)行的次序是可以交换的,即交换次序后的关系与原关系是同一个关系;
(5)任意两个元组不能全同;(至少候选吗的值不能完全相同)
(6)关系需要满足一定规范条件,至少满足每一分量都是不可分的原子数据项。
7.关系查询语言根据其理论基础的不同分为哪两类:
关系代数语言:
查询操作是以集合操作为基础运算的DML语言。
(非过程性弱)
关系演算语言:
查询操作是以谓词演算为基础运算的DML语言。
(非过程性强)
8.关系代数中的操作有哪些?
关系代数中的操作可分为两类:
传统的集合操作:
并、差、交、笛卡尔积。
(前三个运算要求参与运算的两个关系的属性个数必须相等,相对应的属性值必须取自同一个域。
也称之为必须为同类关系)
专门的关系运算(扩充的集合操作):
对关系进行垂直分割(投影)、水平分割(选择),关系的结合(连接、自然连接),笛卡尔积的逆运算(除法)等。
其中五个基本操作为:
并、差、笛卡尔积、投影、选择。
四个常用组合操作为:
交(RS=R-(R-S))、连接(笛卡尔积加选择运算)、自然连接(笛卡尔积加选择和投影运算)、除法(笛卡尔积加投影和选择运算)
两种扩充的关系代数操作为:
外连接(左外、右外、全外)
关系代数中每类运算如何实施要能够熟练进行。
对任意给出的数据都能够求出运算结果。
9.为什么要对关系代数表达式进行优化:
查询优化是由DBMS对关系代数表达式进行优化组合,以提高DBMS的系统效率。
要对关系代数进行优化的原因是:
由于关系代数表达式是由关系代数操作组合而成。
在关系代数操作中,执行笛卡尔积和连接运算最费时间,并且在执行过程中将产生大量的中间结果,以使系统执行效率较低。
在执行前,由DBMS查询处理子系统先对关系代数表达式进行优化,尽可能早地执行选择和投影操作,以得到较小的中间关系,减少运算量和读外存块的次数,节省系统的执行时间,提高执行效率。
10.简述查询优化的优化策略:
(1)在关系代数表达式中尽可能早地执行选择操作。
(2)把笛卡尔积和随后的选择操作合并成F连接运算。
(3)同时计算一连串的选择和投影操作,以免分开运算造成多次扫描文件,从而能节省操作时间。
(4)如果在一个表达式中多次出现某个子表达式,应该将该子表达式预先计算出结果保存起来。
以免重复计算。
(5)适当的对关系文件进行预处理。
(6)在计算表达式之前应先估计一下怎么计算合算。
11.笛卡尔积、等值连接、自然连接三者之间有什么区别:
等值连接中有笛卡尔积运算;
自然连接是一种等值连接,它是两个关系中所有公共属性进行等值连接的结果。
12.什么叫关系数据库?
关系数据库有什么优点(为什么能够一直经久不衰)
关系数据库是以关系模型作为数据的组织方式,实体以及实体间的联系都是用关系来表示的。
关系模型是建立在严格的数学概念基础上的,关系数据库的主要优点是概念简单清晰,用户不需了解复杂的存取路径,不需说明“怎么干”,只需说明“干什么”,易懂易学。
第三章关系数据库标准语言SQL语言
1.什么是SQL?
SQL语言的特点?
SQL结构化查询语言。
SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,充分体现了关系数据库语言的特点和优点。
其特点如下:
1)综合统一2)高度非过程化3)面向集合的操作方式4)以同一种语法结构提供两种操作方式5)语言简洁,易学易用
2.SQL数据库的体系结构及术语:
SQL数据库的体系结构也是三级,但术语与传统的关系模型不同。
关系模式称为“基本表”,存储模式称为“存储文件”,子模式称为“视图”,元组称为“行”,属性称为“列”。
3.SQL数据库的体系结构要点是什么:
(1)一个SQL数据库是表(table)的汇集,它用一个或多个SQL模式定义。
一个SQL模式是表和授权的表态定义。
(2)一个SQL表由行的集合构成,一行是列的序列,每列对应一个数据项。
(3)一个表或者是一个基本表,或者是一个视图。
(视图只保存定义,不保存数据)
(4)一个基本表可跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。
每个存储文件与外部存储器上一个物理文件对应。
(5)用户可用SQL语句对视图和基本表进行查询等操作。
(6)SQL用户可以是应用程序,也可以是终端用户。
4.SQL的组成分成几部分:
SQL主要分成四部分:
(1)数据定义。
(SQLDDL)用于定义SQL模式、基本表、视图和索引的创建和删除(撤消)操作。
(2)数据操纵。
(SQLDML)数据操纵分成数据查询和数据更新两类。
数据更新又分成插入、删除、和修改三种操作。
(3)数据控制。
包括对基本表和视图的授权,完整性规则的描述,事务控制等内容。
(4)嵌入式SQL的使用规定。
涉及到SQL语句嵌入在宿主语言程序中使用的规则。
5.SQL模式的删除(删除(撤消))有哪两种方式:
CASCADE(连锁式)方式:
执行DROP语句时,把SQL模式及其下属的基本表、视图、索引等所有元素全部删除(删除(撤消))。
RESTRICT(约束式)方式:
执行DROP语句时,只有当SQL模式中没有任何下属元素时,才能删除(删除(撤消))SQL模式,否则拒绝执行DROP语句。
6.SQL提供的基本数据类型有哪些?
每种举两个例子:
(1)数值型:
INTEGER长整数、SMALLINT短整数
(2)字符串型:
CHAR(N)长度为N的定长字符串、VARCHAR(N)具有最大长度为N的变长字符串。
(3)位串型:
BIT(N)长度为N的二进制位串、BITVARYING(N)最大长度为N的变长二进制位串
(4)时间型:
DATE日期、TIME时间
SQL2允许用户使用“CREATEDOMAIN”语句定义新的域。
7.完整性约束主要有哪三种子句:
完整性约束主要有三种子句:
主码子句(PRIMARYKEY),检查子句(CHECK)和外部码子句(FOREIGNKEY)
8.什么是视图,它与表的区别是什么:
视图的作用是什么?
在SQL中,外模式一级数据结构的基本单位是视图,视图是从若干基本表和(或)其他视图构造出来的表。
我们创建一个视图时,只是把其视图的定义存放在数据字典中,而不存储视图对应的数据,因此,视图被称为“虚表”,这是它与表的主要区别。
视图有如下作用:
(1)简化用户的操作,让用户只对他感兴趣的数据进行操作,不用关心如何进行表与表的连接才能得到自己的数据;
(2)多视觉地考察同一数据;
(3)更大的数据与程序的逻辑独立性;
(4)为数据的安全性提供一种措施,并不让用户了解数据库数据的内部储存形式。
(5)适当地利用视图可以更清晰地表达查询。
预先定义一些常用的视图,以后查询视图的查询语句更简单清晰。
9.对于视图元组的更新操作(INSERT、DELETE、UPDATE)有哪三条规则:
(1)如果一个视图是从多个基本表使用连接操作导出的,那么不允许对这个视图执行更新操作。
(2)如果在导出视图的过程中,使用了分组和聚合操作,也不允许对这个视图执行更新操作。
(3)如果视图是从单个基本表使用选择、投影操作导出的,并且包含了基本表的主码或某个候选码,那么这样的视图称为“行列子集视图”,并且可以被执行更新操作。
SQL中,允许更新的视图在定义时,必须加上“WITHCHECKOPTION”短语。
10.SQL语言有哪两种使用方式:
一种是在终端交互方式下使用,称为交互式SQL;
另一种是嵌入在高级语言的程序中使用,称为嵌入式SQL,而这些高级语言可以是C、PASCAL、COBOL等,称为宿主语言。
11.嵌入式SQL的实现有哪两种处理方式:
一种是扩充宿主语言的编译程序,使之能处理SQL语句;
另一种是采用预处理方式。
目前多数系统采用后一种。
12.在宿主语言的程序中使用SQL语句有哪些规定:
(1)在程序中要区分SQL语言与宿主语句。
所有SQL语句前必须加上前缀标识“EXECSQL”,并以“END_EXEC”作为语句的结束标志。
(结束标志在不同的宿主语言中不同)
(2)允许嵌入的SQL语句引用宿主语言的程序变量(共享变量),但有两条规定:
1)引用时,这些变量前必须加冒号“:
”作为前缀,以示与数据库中变量有区别。
2)这些变量由宿主语言的程序定义,并用SQL的DECLARE语句说明。
13.用游标机制协调SQL的集合处理方式所用的SQL语句有哪些:
与游标有关的SQL语句有下列四个:
(1)游标定义语句(DECLARE)
(2)游标打开语句(OPEN)
(3)游标推进语句(FETCH)
(4)游标关闭语句(CLOSE)
14.SQLDML的嵌入使用技术:
(1)若是INSERT、DELETE、UPDATE语句,则不必涉及游标,只要加上前缀标识和结束标志就能嵌入宿主语言程序中使用。
(2)若是已知查询结果肯定是单元组的SELECT语句,则不必涉及游标,也可加上前缀标识和结束标志后嵌入宿主语言程序中使用,但此时应该在SELECT语句中增加一个INTO子句,指出找到的值应送到相应的共享变量中去。
(3)若是已知查询结果为多个元组的SELECT语句,则必须涉及到游标,用游标机制把多个元组一次一个地传送给宿主程序处理。
15.SQL语句的具体使用?
数据定义:
create,drop,alter,数据操纵insert,update,delete,select,数据控制:
grant,revoke。
各条语句完成的功能,语法格式等。
特别是createdatabase,createtable,createview,altertable,insert,update,delete,select,grant.
第六章关系数据理论
1.什么是关系数据库:
关系数据库是以关系模型为基础的数据库,它利用关系来描述现实世界。
一个关系既可以用来描述一个实体及其属性,也可以用来描述实体间的联系。
关系实质上是一张二维表。
2.关系数据库设计理论主要包括哪些内容:
关系数据库设计理论主要包括三个方面的内容:
数据依赖、范式、模式设计方法。
其中数据依赖起着核心的作用。
3.达不到3NF的数据库在使用过程中存在的问题是什么:
数据冗余、更新异常、插入异常、删除异常。
(这些通常都是因为数据冗余造成的)
数据冗余、更新异常、插入异常、删除异常具体的含义是什么?
4.函数依赖(FD)的定义:
设有关系模式R(A1,A2,……,An)(即R(U)),X,Y是U的子集,r是R的任一具体关系,如果对r的任意两个元组t1,t2,由t1[X]=t2[X]导致t1[Y]=t2[Y],则称X函数决定Y,或Y函数依赖于X,记为X→Y,X→Y为模式R的一个函数依赖。
或者说,对于X的每一个具体值,都有Y惟一的具体值与之对应,即Y值由X值决定,因而
这种数据依赖称为函数依赖。
5.候选码、主属性、非主属性:
设有关系模式R(A1,A2,……,An),F是R的一个函数依赖集,X是{A1,A2,……,An}的一个子集。
如果
①X→A1A2……An∈F+,且
②不存在X真子集Y,使得Y→A1A2……An成立,则称X是R的候选码。
包含在任何一个候选码中的属性称为主属性,不包含在任何一个候选码中的属性称为非主属性。
6.什么叫部分函数依赖?
在R(U)中,如果X→Y,并且对于X的任何一个真子集X‘,都有X’→Y,则称Y对X完全函数依赖,记作:
。
若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作。
7.什么叫传递函数依赖?
在R(U)中,如果X→Y,Y→Z,且Y=X,但是不存在Y→X,,则称Z对X传递函数依赖,记为
6.函数依赖的推理规则:
设有关系模式R(A1,A2,……,An)和属性集U=A1,A2,……,An,X,Y,Z,W是U的一个子集,F是R的一个函数依赖集,
推理规则如下:
(1)自反律:
如果YXU,则X→Y在R上成立。
(2)增广律:
如果X→Y为F所蕴涵,ZU,则XZ→YZ在R上成立。
(3)传递律:
如果X→Y和Y→Z在R上成立,则X→Z在R上成立。
FD的其他三个推理规则:
(4)合并律:
如果X→Y成立,那么X→YZ成立。
(5)伪传递律:
如果X→Y和WY→Z成立,那么WX→Z成立。
(6)分解律:
如果X→Y和ZY成立,那么X→Z成立。
7.关系模式的分解有几个不同的衡量标准:
分解具有无损连接;
分解要保持函数依赖;
分解既要保持依赖,又要具有无损连接。
8.什么是无损连接:
设有关系模式R,分解成关系模式ρ={R1,R2,……Rk},F是R的一个函数依赖集。
如果对R中满足F的每一个关系r都有:
r=πR1(r)|×|πR2(r)|×|……πRK(r),则称这个分解ρ是无损连接分解。
9.试叙保持函数依赖的定义:
设F是属性集U上的一个函数依赖集,Z是U上的一个子集,F在Z上的一个投影定义为:
πZ(F)={X→Y|X→Y∈F+且XYZ}
设关系模式R的一个分解为ρ={R1,R2,……Rk},F是R的一个函数依赖集,如果原关系得函数依赖在ρ中可以找到,则称为分解ρ保持函数依赖。
10.第一范式(1NF):
如果关系模式R的所有属性的值域中每一个值都是不可再分解的值,则称R是属于第一范式模式。
11.第二范式(2NF):
如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的候选码,则称R是第二范式模式。
12.第三范式(3NF):
如果关系模式R是第一范式,且每个非主属性都不传递依赖于R的候选码,则称R是第三范式的模式。
13.BCNF:
如果关系模式R是第一范式,且每个属性都不传递依赖于R的候选码,那么称R是BCNF的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库技术 复习 答题