数据库系统原理简答题汇总doc.docx
《数据库系统原理简答题汇总doc.docx》由会员分享,可在线阅读,更多相关《数据库系统原理简答题汇总doc.docx(21页珍藏版)》请在冰豆网上搜索。
数据库系统原理简答题汇总doc
数据库系统原理简答题汇总
第一章数据库系统概念
1.请简述数据,数据库,数据库管理系统,数据库系统的概应(
答:
①数据:
是描述事务的符号记录,是指用物理符号记录下来的,可以鉴别的的信息。
%1数据库:
是指长期储存在计算机中的有组织的,可共享的数据集合,且数据库中的数据按一定的数据模型组织,描述和存储,具有较小的冗余度,较高的数据独立性,系统易于扩展,并可以被多个用户共享。
%1数据库管理系统:
是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。
负责科学有效地组织和存储数据,并帮助数据库的使用者能够从大量的数据中快速地获取所需数据,以及提供必要的安全性和完整性等统一控制机制,实现对数据有效的管理与维护。
%1数据库系统:
是指在计算机中引入数据库技术之后的系统,一个完整的数据库系统包括数据库,数据库管理系统以及相关实用工具,应用程序,数据库管理员和用户。
2.请简述在数据管理技术中,与人工管理,文件系统相比数据库系统的优点/特点?
答:
①数据集成②数据共享性高③数据冗余小④数据一致性⑤数据独立性高⑥实施统一管理和控制⑦减少应用程序开发与维护的工作量
3.请简述数据库系统的三级模式和两层映像含义?
答:
数据库的三级模式是指数据库系统是由模式、外模式和内模式三级工程的,对应了数据的三级抽象。
两层映像是指三级模式之间的映像关系,即外模式/模式映像和模式/内模式映像。
4.请简述关系模型与网状模型,层次模型的区别/特点?
答:
使用二维表结构表示实体及实体间的联系建立在严格的数学概念的基础上概念单一,统一用关系表示实体和实体之间的联系,数据结构简单清晰,用户易懂易用,存取路径对用户透明,具有更高的数据独立性、更好的安全保密性。
5.请简述数据库管理系统的功能?
答:
①数据定义功能②数据操纵功能③数据库的运行管理功能④数据库的建立和维护功能⑤数据组织存储和管理功能⑥其他功能:
主要包括与其他软件的网络通信功能。
6.请简述数据库系统的组成?
答:
一个完整的数据库系统包括数据库,数据库管理系统以及相关实用工具,应用程序,数据库管理员和用户。
7.数据管理的任务是什么?
答:
数据管理的任务就是进行数据收集,组织,控制,存储,选取,维护,实现在适当的时刻,以适当的形式,给适当的人,提供适当的数据。
8.主要的逻辑数据模型有哪些?
答:
层次模型,网状模型,关系模型,面向对象模型。
10.请说明实体,属性,码或键的概念?
答:
实体:
客观存在并可相互区别的事务。
属性:
实体所具有的某种特性称为实体的属性。
码或键:
可唯一标识实体的属性集。
11•简述客户/服务器模式概念?
答:
命令行客户端,图形化界面管理工具,应用程序等称为客户端,前台或表示层,主要完成与数据库使用者的交互任务;而数据库管理系统则称之为服务器,后台或数据层,其主要负责数据管理。
12简述人工管理阶段数据管理的特点?
答:
①数据不保存②应用程序管理数据③数据面向应用
第二章关系数据库
1.请简述关系数据库的基本特征?
答:
关系数据库的基本特征是使用关系数据模型组织数据。
2.请简述关系数据库的优点?
答:
包括高级的非过程化语言接口,较好的数据独立性等,为商品化的关系数据库管理系统的研制做好了技术上的准备。
3.请简述关系数据库中关系模型和关系的区别?
答:
同数据模型一样,数据库也有型和值之分,在关系数据库中,关系模型是型,关系是值,即关系模型是对关系的描述。
关系模式是静态的,稳定的,而关系是动态的,随时间不断变化的。
这是因为关系操作在不断的更新着数据库的数据。
4.请简述超码或超键的含义?
答:
如果在关系的一个码中移去某个属性,它仍然是这个关系的码,则称这样的码或键为该关系的超码或超键。
5.简述关系代数中的“交”运算的定义?
答:
假设有两个关系R1和R2,R1和R2的交运算产生一个新关系R3OR3是由既属于R1,同时又属于R2的元组组成。
记为R3=R1nR2o
6.简述传统的集合运算有哪些?
答:
并,差,交,笛卡尔积。
7.请简述实体完整性约束的含义?
答:
实体完整性约束是指关系的主属性,即主码的组成不能为空,也就是关系的主属性不能是空值NULL。
8.什么是数据冗余?
答:
数据冗余是指同一数据被反复存储的情况。
9.什么是函数依赖?
答属性X中的值在属性丫中能找到唯一的值与之对应,记作X-Y,即丫依赖于X。
10.什么是传递函数依赖?
答:
设R为任一给定关系,X,丫,Z为其不同属性子集,若X-Y,
Y不能决定X,Y-Z,称为Z传递函数依赖于Xo
".什么是完全函数依赖?
答:
设R为任一给定关系,X,Y,Z为其属性集,若X-Y,且对X中的任何真子集乂都有X'Y,则称丫完全函数依赖于X。
12简述第二范式的定义?
答:
设R为任一给定关系,若R为1NF,且其所有非主属性都完全
依赖于候选关键字。
13.什么是BCNF?
答:
设R为任一给定关系,X,丫,Z为其属性集,F为其函数依赖集,若R为3NF,且其F中所有函数依赖X-Y中的X,必包含候选关键字。
14.简述数据库数据完整性的含义?
答:
是指数据库中数据的正确性,相容性,一致性。
15.简述第一范式的定义?
答:
设R为任一给定关系,R中每个列与行的交点处的取值都是不可再分的基本元素。
16.简述第三范式的定义?
答:
设R为任一给定关系,若R为2NF,且其每一个非主属性都不能传递函数依赖于候选关键字。
仃.请简述什么是参照完整性约束?
答:
若属性或属性组F是基本关系R的外码,与基本关系S的主码K相对应,则对于R中每个元组在F上的取值只允许有两种可能,要么是空值,要么与S中某个元组的主码值对应。
18.请简述关系规范化过程?
答:
对于存在数据冗余、插入异常、删除异常问题的关系模式,应采取将一个关系模式分解为多个关系模式的方法进行处理。
一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式,这就是所谓的规范化过程。
19.什么是部分函数依赖?
答:
设R为任一给定关系,X,丫,Z为其属性集,若X-Y,且对X中的有一个真子集乂都有X'Y,则称丫部分函数依赖于X。
20数据中的外码或外键的含义是什么?
答:
当关系中的某个属性不是这个关系的主码或候选码,而是另一个关系的主码时,称该属性为这个关系的外码或外键。
21简述数据库中主码的含义?
答:
在一个关系的若干个候选码或候选键中指定一个用来唯一标识关系的元组,则成这个被指定的候选码或候选键为该关系的主码或主键。
22关系数据库对关系的限定有哪些具体要求?
答:
1•每一个属性都是不可分解的,2•每一个关系仅仅有一种关系模式3•每一个关系模式中的属性必须命名在同一个关系模式中属性名必须是不同的4•同一个关系中不允许出现候选码或候选键值完全相同的元组5•在关系中元组的顺序是无关紧要的可以任意交换的6•在关系中属性的顺序是无关紧要的,可以任意交换的。
23简述关系数据结构中,参照关系和被参照关系的含义?
答:
参照关系也称为从关系,被参照关系也称为主关系,它们是指以外码相关联的两个关系,以外码作为主码的关系被称为被参照关系;外码所在的关系成为参照关系。
被参照关系与参照关系是通过外码相联系的,这种联系通常是一对多的联系。
24.简述关系代数中差的运算定义?
答:
假设有两个关系R1和R2,R1和R2的差运算产生一个新关系R3oR3是由既属于R1但不属于R2的元组组成。
记为R3=R1-R2O25关系语言的特点?
答:
关系语言的特点是高度非过程化,即:
用户不必请求数据库管理员为其建立特殊的存储路径,存取路径的选择由DBMS的优化机制来完成;用户也不必求助于循环和递归来未完成数据的重复操作。
26简述主属性和非主属性的区别?
答:
关系中包含在任何一个候选码中的属性成为主属性,不包含在任何一个候选码的属性成为非主属性。
27专门的关系运算?
答连接投影选择除
28简述数据库中候选码或候选键的含义?
答:
如果在关系的一个码中,不能从中移去任何一个属性,否则它就不是这个关系的码或键贝9成这样的码或键为该关系的候选码或候选键。
29简述用户定义完整性约束的含义?
答:
用户定义的完整性约束是针对某一应用环境的完整性约束条件,它反映了某一具体应用所涉及的数据应满足的要求。
30简述关系数据库的含义?
答:
关系数据库是以关系模式作为数据的逻辑模型,并采用关系作为数据组织方式的一类数据库,其数据库操作是建立在关系代数的基础上。
在一个给定的应用领域中,所有关系的集合构成一个关系数据库。
31简述关系数据库中关系的三种类型和含义?
答:
关系:
基本关系,查询表和视图表,基本关系通常又称为基本表或基表,是实际存在的表,它是实际存储数据的逻辑表示;查询表是查询结果对应的表,视图表是由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。
32简述全码或全键的含义?
答:
一个关系模式的所有属性集合是这个关系的主码或主键,则称这样的主码或主键为全码或全键。
33简述集合运算中并运算的含义?
答:
假设有两个关系R1和R2,R1和R2的并运算产生一个新关系R3oR3是由属于R1或R2的所有不同元组组成。
记为R3=R1uR2o34在关系数据库中,表有哪些部分组成?
答:
表也称为关系,是一个二维的数据结构,他由表名,构成表的各个列及若干行数据组成。
第三章数据库设计
1•数据库设计的基本步骤?
答:
①需求分析设计;②概念结构设计;③逻辑结构设计;④物理结构设计;⑤数据库设计;⑥数据库的运行和维护
2.请分别举例说明实体之间的联系的三种表现形式?
答:
一对一联系:
对于实体集A中的每个实体,实体集B中最多只有一个实体与之联系,反之亦然。
举例:
班级与班长,每个班只有一个班长,每个班长也只在一个班内任职。
一对多联系:
对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中最多只有一个实体与之联系。
举例:
班级与班级成员,每个班级对应多个班级成员,每个班级成员只对应一个班级。
多对多联系:
对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中有M个实体与之联系。
举例:
授课班级与任课教师,每个班级对应多名任课教师,每个任课教师也对应多个授课班级。
3.请简述基本E-R图向关系模型转换的原则?
答:
1)一个实体型转换为一个关系模式。
实体的属性作为关系的属性,实体的码作为关系的码。
2)一个一对一联系(1:
1)可以转换为一个关系模式,也可以与任意一端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码;如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
3)一个一对多联系(1:
N)可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。
4)一个多对多联系(M:
N)转换为一个关系模式。
与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,关系的码为各实体码的组合。
三个或三个以上实体间的一个多元联系可以转换为一个关系模式。
与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,关系的码为各实体码的组合。
5)具有相同码的关系模式可以合并。
4.请说明数据库设计的目标?
答:
数据库设计具有两个十分重要的目标,即满足应用功能需求和良好的数据库性能。
5.什么是良好的数据库性能?
答:
主要是对数据库的高效率存取和空间的节省,并具有良好的数据共享性,完整性,一致性及安全保密性。
6.简述数据库行为设计?
答:
是确定数据库用户的行为和动作,而用户的行为和动作是对数据
库的操作,它们通常是通过应用程序来实现的。
7.简述需求分析的四个步骤?
答:
①确定数据库范围②分析数据应用过程③收集与分析数据④编写需求分析报告。
8.逻辑设计的目的是什么?
答:
将概念模型转换为等价的,并为特定DBMS所支持数据模型的结构。
9.逻辑设计的主要步骤?
答:
①模型转换②子模式设计③应用程序设计说明④设计评价
10.逻辑结构设计的任务?
答:
是把在概念结构设计产生的概念模型转换为具体的DBMS所支持的逻辑数据模型。
".在数据库设计的基本步骤中,需求分析的目标是什么?
答:
了解与分析用户的信息及应用处理的要求,并将结果按一定格式整理而形成需求分析报告。
该分析报告是后续概念设计,逻辑设计,物理设计,数据库建立与维护的依据。
12.数据库设计的内容?
答:
①数据库结构设计,针对给定的应用环境进行数据库的模式或子模式的设计,包括数据库的概念结构模式,逻辑结构模式和物理结构模式。
②数据库行为设计,数据库行为设计是确定数据库用户的行为和动作,而用户的行为和动作是对数据库系统的操作。
他们通常是通过应用程序来实现。
13.什么是数据库试运行?
答:
数据库试运行是指在已建立的数据库上,按生产现场实际环境要求运行应用程序,进行对数据库的各种操作,检验其功能和性能,如有不当或错误。
则应根据实际情况或修改应用程序,修改数据库物理模型,甚至修改逻辑模型。
14.常见的规范设计法?
答:
①新奥尔良设计法②基于E-R模型设计法③基于第三范式设计法
15.数据库实施设计?
答:
①加载数据②应用程序设计③数据库试运行
16数据库实现与操作阶段包括哪些子阶段?
答:
数据库实现,操作与监督,修改与调整。
仃简述局部信息结构设计的步骤?
答:
局部信息结构设计的步骤包括:
确定局部范围;选择实体;选着实体关键字;确定实体间联系,确定实体的属性。
第四章SQL与关系数据库基本操作
1.请简述SQL是何种类型的语言?
答:
SQL,是一种数据库查询和程序设计语言,用于存取数据
以及查询、更新、管理关系数据库系统。
2.请简述什么是子查询?
答:
子查询是指嵌套在其他语句中(SELECT,INSERT)的
SELECT查询语句。
3.请简述视图与基本表的区别?
答:
基本表是数据库中真实存在的表,而视图是建立在对数据库中真实表查询基础上的虚拟表。
视图的内容是由存储在数据库中进行查询操作的SQL语句定义的,它的列数据与行数据均来自于定义视图的查询所引用的基本表。
4.SQL的特点?
答:
①SQL不是某个特定数据库供应商专有的语言②SQL简单易学③SQL尽管看上去很简单,但他是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。
5.简述WAMP的架构方式?
答:
用Windows作为操作系统,Apache作为服务器,MySQL作为数据库管理系统,PHP作为脚本解释语言。
6.简述LAMP的构架方式?
答:
用Linux作为操作系统,Apache作为服务器,MySQL作为数据库管理系统,PHP作为脚本解释语言。
7.简述MySQL的内置函数的基本分类?
答:
数学函数,聚合函数,字符串函数,日期和时间函数,加密函数,控制流程函数,格式化函数,类型转换函数,系统信息函数。
8.MySQL提供的几类编程语言中的常用运算符有哪些?
答:
算术运算符,位运算符,比较运算符,逻辑运算符。
9.数据库模式的定义包括哪些操作?
答:
包含数据库的创建,选择,修改,删除,查看的操作。
10.说明DROPTABLE和DELETE语句的联系和区别?
答:
都可以从基本表中删除元组。
DROP不但删除表中的全部数据,还删除整个关系表结构,DELETE可以根据条件删除表中部分元组。
11•请列出MySQL中和表定义相关的四个SQL语句?
答:
①CREATETABLE②ALERTTABLE③DROPTABLE@SHOWTABLE
12.简述索引的分类中主键的含义?
答:
主键是一种唯一性索引。
创建主键时,必须指定关键字PRIMARY
KEY,且不能有空值。
13.索引的删除有哪两种方法?
答:
使用DROPINDEX删除,
使用ALTERTABLE删除
14.创建索引的三种方式?
答:
CREATEINDEX
CREATETABLE
ALTERTABLE
15.简述索引的定义?
答:
索引是DBMS根据表中的一列或若干列按照一定顺序建立的列值与记录行之间的对应关系表,因而索引实质上是一张描述索引列的列值与原表中记录行之间一一对应关系的有序表。
16.数据更新操作的有几种,在SQL中分别对应哪三种语句?
答:
向表中添加若干行数据,修改表中的数据,删除表中的数据。
对应添加修改,删除。
17.INTER语句的三种语法形式?
答:
INSERTVAULES
INSERTSELECT
INSERTSET
18MySQL支持数据库的三级模式结构吗,概述?
答:
MySQL作为一种关系型数据库管理系统,遵循SQL标准,提供了对数据定义语言DDL,数据操纵语言DML,数据控制语言DCL的支持,同样支持关系数据库的三级模式结构,其外模式包括视图和部分基本表,数据库模式包括若干基本表,内模式包括若干存储文件。
19MySQL增加的部分扩展的语言要素包括哪些?
答:
常量,运算符,表达式,函数,流程控制语句和注解等。
20简述MySQL中常量的含义及分类?
答:
常量是指在程序运行过程中值不变的量,也称为字面量或标量。
分为字符串常量,数值常量,十六进制常量,时间日期常量,位字段值,布尔值和NULL值。
21什么是唯一性索引?
答:
唯一性索引和普通索引基本相同,只是有一点区别,即索引列中
的所有值都只能出现一次,必须是唯一的,创建唯一性索引时,通常
使用的关键字UNIQUEo
22索引中主键的含义?
答:
主键时一种唯一性索引,创建主键时,必须指定关键字PRIMARY
KEY,且不能有空值。
23索引存在的弊端有哪些?
答:
1•索引时以文件的形式存储的,DMS会将一个表的所有索引保存在同一个索引文件中,索引文件需要占用磁盘空间,2•索引在提高查询速度的同时,却会降低更新表的速度。
24普通索引的含义?
答:
普通索引是最基本的索引类型,没有任何限制,创建普通索引时
通常使用关键字INDEX或KEYo
25什么是等值连接?
答:
在FORM子句中使用关键字JOIN或JOIN连接两张表时,如若在ON子句的连接条件中使用运算符二,即进行相等性测试,则此连接方式成为等值连接。
26简述内连接方式中自连接的含义?
答:
在FORM子句中使用关键字INNERJOIN或JOIN连接两张表时,可以将一个表与他自身进行连接,这种连接方式称之为自连接。
27简述左外连接和右外连接的区别?
答:
左外连接简称左连接,以左表为基表,在FORM子句中LEFTJOIN来连接两张表,右外连接简称右连接,以右表为基表,在FORM子句中使用RIGHTOUTERJOIN或RIGHTJOIN来连接两表。
28HAVING与WHERE子句两者之间存在哪些差异?
答1WHERE子句主要用于过滤数据行,而HAVING子句主要用于过滤分组,即HAVING子句可基于分组的聚合值而不是特点行的值来过滤数据O2HAVING子句中的条件可以包含聚合函数,而WHERE子句中则不可以。
3WHERE子句会在数据分组前进行过滤。
因而,WHERE子句排除的行不包含在分组中,这就会可能改变计算值,从而影响HAVING子句基于这些值过滤掉的分组。
29简述内连接方式中的非等值连接?
答:
在FORM子句中使用关键字INNERJOIN或JOIN连接两张表时,如若在ON子句的连接条件中使用除运算符二之外的其他运算符,即进行不相等性测试,则此连接方式成为非等值连接。
第五章数据库编程
1.请简述存储过程的概念?
答:
存储过程是一组为了完成某项特定功能的SQL语句集,经过编译后存储在数据库中,可以由声明式的SQL语句和过程式的SQL语句组成,用户通过指定存储过程的名字和参数来调用并执行存储过程,完成特定任务。
2.请简述在数据库的操作中使用存储过程的优点?
答:
①可增强SQL语言的功能和灵活性②提供良好的封装性,
③提高系统性能,④减少网络流量,⑤存储过程可作为一种安全机制来确保数据库的安全性和数据的完整性。
3.请简述存储过程与存储函数的区别?
答:
①存储函数不能拥有输出参数,自身即是输出参数;存储过程可以拥有输出参数
%1存储函数可以被直接调用,而存储过程必须通过CALL语句调
用,
%1存储函数中必须包含一条RETURN语句,而这条特殊的SQL语句不允许包含于存储过程中
4.简述在mysql中使用游标的过程?
答:
声明游标:
用DECLARECURSOR语句创建游标;
打开游标:
用OPEN语句打开游标
读取数据:
用FETCH……INTO语句从中读取数据
关闭游标:
用CLOSE语句关闭游标
5.什么是游标?
答:
游标是一个被SELECT语句检索出来的结果集。
在存储了游标后,应用程序或用户就可以根据需要滚动或浏览器中的数据。
6•简述在MySQL中定义游标的句法?
答:
DECLARE<游标名〉CURSORFOR