数据库考试资料Word下载.docx
《数据库考试资料Word下载.docx》由会员分享,可在线阅读,更多相关《数据库考试资料Word下载.docx(25页珍藏版)》请在冰点文库上搜索。
(1)模式(逻辑模式或概念模式):
中间层,一个数据库只有一个模式,全体数据的逻辑结构和特征的描述
(2)外模式(子模式或用户模式):
最外层,可以有多个,部分数据的逻辑结构和特征描述
(3)内模式(存储模式或物理模式):
最内层,只能有一个,数据的存储结构表示
内模式是整个数据库实际存储的表示,而模式是整个数据库实际存储的抽象,外模式是概念模式的某一部分的抽象表示
二级映像:
(1)外模式/模式映像:
保证了数据的局部逻辑结构不变(外模式不变),保证数据与程序间的逻辑独立性
(2)模式/内模式映像:
保证数据存储结构的变化不影响数据的全局逻辑结构的改变,保证数据的物理独立性
数据库系统的三级模式与二级映像的优点:
(1)保证数据的独立性
(2)简化了数据接口(3)有利于数据共享(4)有利于数据的安全保密
数据库的外部体系结构:
1.单用户结构的数据库系统
2.主从式结构的数据库模式
3.分布式结构的数据库系统
4.客户机/服务器结构的数据库系统
5.浏览器/服务器结构的数据库系统
DBMS的主要功能:
①数据定义(DDL语言:
定义数据的三级模式结构,定义二级映像,定义有关的约束条件)
②数据操纵(DML语言:
检索更新,包括插入,修改,删除)
③数据库运行管理
④数据库的建立和维护、⑤数据通信接口
数据组织、存储、管理
DBMS的组成:
1.预言编译处理程序2.系统运行控制程序3.系统建立、维护程序4.数据字典(描述数据库的三级模式,数据类型、用户名和用户权限等有关数据库系统的信息)
数据模型的分类:
第一类:
概念模型(信息模型):
是对现实世界的事物及联系的第一级抽象
第二类:
逻辑模型(数据模型):
是对现实世界的第二级抽象;
物理模型:
是对数据最底层的抽象
数据模型的组成要素:
数据结构(层次结构、网状结构、关系结构)、数据操作(查询和更新)、数据完整性约束(数据的正确、有效、相容)
E-R图的基本成分包含实体型(矩形框)、属性(椭圆形框)和联系(菱形框)
四种数据模型优缺点:
①层次模型(有向树结构)
优点:
结构简单,层次分明,便于在计算机内实现;
结点间联系简单,查询效率高;
提供了良好的数据完整性支持
缺点:
不能直接表示两个以上实体型间的复杂联系和实体型间的多对多联系;
对数据插入和删除的操作限制太多;
查询子女结点必须通过双亲结点
②网状模型(有向图结构)
能够直接的描述客观世界,可表示实体间的多种复杂关系;
具有良好的性能和存储效率
数据结构复杂,不便于终端用户掌握;
其数据定义语言和数据操纵语言极其复杂,不易用户掌握;
记录间的联系是通过存取路径实现的,加重了编写应用程序的负担
③关系模型(二维表结构)
有严格的数学理论依据;
数据结构简单、清晰、用户易懂、易用;
关系模型的存取路径对用户透明,具有更高的数据独立性、更好的安全保密性,简化了程序员的工作和数据库建立和开发的工作
查询效率不如关系模型
④面向对象模型(嵌套和递归)
优点:
能够完整的描述现实世界的数据结构,就具有丰富的表达能力
缺点:
模型相对复杂
第一代数据库系统:
①支持三级模式的体系结构②用存储路径来表示数据之间的联系③独立的数据定义语言④导航的数据操纵语言
第二代数据库系统:
①关系模型的概念单一,实体以及实体之间的联系都用关系表示②关系模型以代数为基础,形式化基础好③数据独立性强,数据的物理存储路径对用户隐蔽④关系数据库语言是非过程化的,降低了用户编程的难度
第三代数据库:
应具有特点:
①应支持面向对象的数据模型②应保持和继承第二代数据库的优点③必须具有开放性
分布式数据库特点:
①自治与共享②冗余的控制③分布事务执行的复杂性④数据的独立性(逻辑数据透明性、物理数据透明性、数据分布透明性、数据冗余透明性)
数据仓库特点:
①面向主题②集成的③相对稳定的④反映历史变化
数据挖掘的分析方法:
直接数据挖掘(分类、估值、预言)和间接数据挖掘(相关性分组或关联规则、聚集、描述和可视化及复杂数据类型挖掘(文本、网页、图形图像、音视频和空间数据))
多媒体数据库的三种结构:
①由单独一个多媒体数据库来管理不同媒体的数据库及对象空间②主辅DBMS体系结构③协作DBMS体系结构
域(D):
一组具有相同数据类型的值的集合,又称值域,域中所包含的值的个数称为域的基数(m)
笛卡尔积:
笛卡尔积也是一个集合
关系:
笛卡尔积的任一(数学上:
有意义的)子集,因此也可以把关系看作一个二维表,R表示关系的名字,n表示关系的目或度,当n=1时,称为单元关系,n=2称为二元关系,关系中的每个元素是关系中的元组(t),具有相同关系框架的关系成为同类关系。
关系由关系头和关系体组成,关系头是由属性名的集合,它是固定不变的;
关系体是指关系结构中的内容或数据,它随元组的建立、删除或修改而改变。
关系是一种规范化了的二维表中行的集合。
性质:
(1)列是同质的
(2)不同的列可来自同一个域,每一列称为属性,不同的属性必须有不同的名字(3)列的顺序可以任意交换,但交换时连同属性名一起交换(4)元组的顺序可以任意交换(5)关系中不允许出现相同的元组(6)关系中每一分量必须是不可分的数据项
关系模式:
是对关系的描述,下划线表示关系的主码,关系模式是型,即关系头,是静态固定的;
而关系是它的值,即关系体,是动态,随时间变化的
关系数据库:
型—关系数据库模式;
值—关系数据库
候选码(候选关键字或候选键):
能唯一标识关系中元组的一个属性或属性集(唯一性、最小性)
主码:
如果一个关系中有多个候选码,从中选择一个作为操作变量,被选用的候选码称为主码,或称作主关系键、主键、关系键、关键字,每个关系必定有且仅有一个主码
主属性:
包含在主码中的各个属性非主属性:
不包含在任何候选键中的属性
全码:
若所有属性的组合是关系的候选键
外码:
如果属性X不是本关系的主码,而是另一个关系的主码,则称X是本关系的外码或外部关系键,并称本关系为参照关系,另一个关系称为被参照关系
关系模型中三类完整性约束:
实体完整性(主关系键的值不能为空或部分为空)、参照完整性(X的每一个值等于被参照关系中主码的某一个值或者为空)、用户自定义完整性(针对某一具体关系数据库的约束条件)
关系模型由关系数据结构、关系操作和关系完整性约束三部分组成
关系运算分为:
关系代数和关系演算
关系代数:
一种抽象的查询语言,关系代数运算是以集合运算为基础的
按运算符分为两类:
传统的集合运算(并、差、交(前提:
必须相容)、笛卡尔积)
专门的关系运算(选取、投影、连接、除法)
5种基本操作:
交、差、积、选取和投影
并:
R与S所有的元组合并
差:
在R中删去与S相同的的元组
交:
既属于R又属于S的元组
广义笛卡尔积:
若R1有k1个元组,R2有k2个元组,则广义笛卡尔积有k1×
k2个元组
选取σ:
根据一定条件选择若干个元组,组成一个新的关系
投影∏:
选出若干属性列,组成新的关系
连接∞:
等值连接,小于连接,大于连接
自然连接:
相同属性等值连接后,删除重复属性列
除法:
R/S结果为R中的一部分
关系演算分为:
元组关系演算(ALPHA语言、QUEL语言)和域关系演算(QBE)
元组关系演算:
简单查询:
GETW(s)
条件查询:
GETW(s):
条件
定额查询:
GETW(定额):
带元组变量的查询,库函数查询
域关系演算:
。
基本表:
一个关系对应一个基本表,是独立存在的表;
一个或多个基本表对应一个存储文件
视图:
是一个或多个基本表导出的表,是一个虚表,数据库中只存放视图的定义而不存放视图对应的数据
SQL支持数据库的三级模式:
外模式—视图和部分基本表;
模式—基本表;
内模式—存储文件
SQL功能:
数据查询、数据定义、数据操纵、数据控制
一个数据库至少应包含一个数据文件(.mdf,存放数据库数据和数据库对象)和一个事务日志文件(.ldf,可用来还原数据库内容)
文件组:
对个数据文件的集合,分为主要文件和次要文件,一个数据文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用。
次要文件中可以指定一个缺省文件组,若数据库对象没有指定文件组,则会放在缺省文件组,如果没有指定缺省文件组,主要文件组为缺省文件组。
日志文件不分组,不属于任何文件组。
SQLserver的系统数据库:
Master数据库(最重要)、Model数据库(模板数据库)、Msdb数据库(代理服务数据库)、Tempdb数据库(系统的临时存储)、Resource数据库(只读数据库)
SQL命令:
CREATDATEBASE——创建数据库
ALTERDATEBASE——修改数据库(DBO&
DBA增加和删除文件或文件组、更改数据库属性、更改数据库排序规则和设置数据库选项)
DROPDATEBASE——删除数据库(DBO&
DBA)
CREATTABLE——创建数据表
SQLserver提供的数据完整性机制:
约束、默认、规则、触发器、存储过程
约束:
NULL/NOTNULL约束(表示不知道、不确定或没有数据)
UNIQUE约束(唯一约束)——数据完整性
PRIMARYKEY约束(主键约束)——保证实体完整性
FOREINGKEY约束(外键约束)——保证两表间的参照完整性
CHECK约束——保证域的完整性
索引:
可以加快检索的数据库结构,包含从表或视图的一列或多列生成的键,以及映射到指定数据存储位置的指针。
索引可以显著提高数据库查询和应用程序的性能。
索引的两种基本类型:
聚集索引和非聚集索引(还有唯一索引、视图索引、全文索引、XML索引等)
聚集索引(CLUSTERED):
表中行的物理存储顺序与索引键的逻辑顺序相同,一个表只能包含一个聚集索引
非聚集索引(NONCLUSTERED):
数据行的物理存储顺序与索引键的逻辑顺序并不一致,每个表可以有多个非聚集索引
唯一索引:
能够保证索引键中不包含重复的值,聚集索引和非聚集索引都可以是唯一的
视图索引:
对视图创建唯一索引来提升性能
全文索引:
每个表只允许有一个全文索引,若对表创建全文索引,则该表必须具有一个唯一且非空的列
XLM索引:
对xml数据类型创建XML索引
DORPINDEX——删除索引
WHERE——选取SELECT——投影DISTINCT——自动消去重复行
比较运算符:
BETWEENAND—确定范围IN—确定集合LIKE—字符匹配ISNULL—空值
字符串通配符:
%—代表0个或多个字符_—代表一个字符[]—在某一范围的字符
[^]—不在某一范围的字符
GROUPYBY:
可以将查询结果按属性列或属性组合在行的方向上进行分组,每组在属性列或属性列组合上具有相同的值。
ORDERBY:
对查询结果进行排序,必须出现在其他字句之后
JOIN关键字:
进行连接,当将JOIN关键字放在FROM子句中,应有关键词ON与之对应,以表明连接条件
UNION:
合并查询,将来自不同查询的数据组合起来,会自动将重复的数据行剔除,参加合并查询的表结构应该相同
SELECTINTO:
可以将查询结果存储到一个新建的数据库表或临时表中,临时表只存储在内存中,并不存储在数据库中,所以存在时间非常短
UPDATE:
对表中的一行或多行数据记录的某些列值进行修改
DELETE:
删除表中一行或者多行记录
INSERTINTO:
添加数据
CREATVIEW:
创建视图;
ALTERVIEW:
修改视图;
DROPVIEW:
删除视图
数据控制语言(DCL)
SQL系统中两种安全机制:
视图机制,权限机制
权限:
系统权限和对象权限
GRANT:
为用户授予系统权限或对象权限
关系数据库的规范化理论包括:
函数依赖、范式、模式设计;
其中函数依赖起着核心作用,是模式分解和模式设计的基础,范式是模式分解的标准
不合理的关系模式存在的存储异常问题:
(1)数据冗余
(2)插入异常(3)删除异常(4)更新异常
数据依赖:
关系模式中各属性之间相互依赖、相互制约的联系称为数据依赖;
数据依赖一般分为函数依赖、多值依赖和连接依赖
函数依赖:
X和Y是U的子集,对于R(U)的任意一个可能关系,对于X的每一个具体值,Y都有唯一的具体值与之对应,则称X决定函数Y,或Y函数依赖于X,记作X→Y
平凡函数依赖:
Y是X的子集,必然存在着函数依赖X→Y,这种函数依赖称为平凡函数依赖;
如果Y不是X的子集,则称X→Y为非平凡函数依赖
函数依赖与属性之间的联系类型有关:
当属性X与属性Y有1:
1的联系时,存在函数依赖X→Y,Y→X
当属性X与属性Y有m:
1的联系时,只存在函数依赖X→Y
n的联系时,X与Y之间不存在任何函数依赖
逻辑蕴涵:
F是在关系模式R(U)上成立的函数依赖集合,X,Y是U的子集,X→Y是一个函数依赖。
如果从F中可以推导出X→Y,即对于R中每个满足F的关系也满足X→Y,则称X→Y为F的逻辑蕴涵,记作F|=X→Y
闭包:
F是函数依赖集,被F逻辑蕴涵的所有函数依赖的集合,称为F的闭包,记为F+
设关系模式R(U),U是关系模式的属性集,X、Y、Z、W均是U的子集
公理:
(1)自反律:
Y
X
U,则X→Y在R上成立,即一组属性函数决定它所有子集
(2)增广律:
若X→Y在R上成立,且Z
U,则XZ→YZ在R上也成立
(3)传递律:
若X→Y,Y→Z在R上成立,则X→Z在R上也成立
推论:
(1)合并律:
若X→Y,X→Z在R上成立,则X→YZ在R上也成立
(2)伪传递律:
若X→Y,YW→Z在R上成立,则XW→Z在R上也成立
(3)分解律:
若X→Y,Z
Y在R上成立,则X→Z在R上也成立
定理:
X→A1A2A...An成立的充分必要条件是X→Ai(i=1,2,...n)成立
(4)复合律:
若X→Y,W→Z在R上成立,则XW→YZ在R上也成立
完全函数依赖:
如果X→Y,并且对于X的任意一个真子集X’,都有X’
Y,则称Y对X完全函数依赖,记作X
部分函数依赖:
对于X的某一个真子集X’,有X’→Y,则称Y对X部分函数依赖X
传递函数依赖:
若X→Y,但Y
X,而Y→Z,则称Z对X传递函数依赖;
若X
Y,Y→Z,则称Z对X直接函数依赖
函数依赖分为:
完全函数依赖、部分函数依赖、传递函数依赖
属性集闭包:
X→Y能用函数推理规则推出的充分必要条件是Y
X+
超键:
F是R上成立的一个函数集,X→U在R上成立(即X→U在F+中),称X是R的一个超键
候选键:
如果X→U在R上成立,但对X’都有X’→U不成立(即X’→U不在F+中),称X是R的一个候选键
快速求解候选键:
将属性分为L类、R类、N类、LR类
(1)若X是L类,则X必为R的任一候选键成员
(2)若X是L类,且X+包含了R的全部属性,则X必为R的唯一候选键
(3)若X是R类,则X不在任何候选键中
(4)若X是N类,则X包含在R的任一候选键中
(5)若X是N类和L类,且X+包含了R的全部属性,则X是R的唯一候选键
多属性函数依赖集候选键的求解算法:
(1)X代表L类和N类属性,Y代表LR类属性
(2)求X+,若X+包含了R的全部属性,则X是R的唯一候选键,转(5),否则转(3)
(3)在Y中取一个属性A,求(XA)+,若它包含了R的全部属性,转(4);
否则,调换一属性,反复进行此操作,直到试完Y中所有属性
(4)如果已经找到所有候选键,转(5),否则在Y中一次取两个,三个...求他们的属性闭包,直到找到其闭包包含R的全部属性
(5)停止,输出结果
函数依赖推理规则的完备性:
指F+中的函数依赖都能从F集使用推理规则集推出,完备性保证了可以推出所有蕴涵的函数依赖,保证了推导的有效性和可靠性
如果F+=G+,则称F和G是等价的函数依赖集,记作F
G,如果F和G等价,就说F覆盖G,或G覆盖F
最小函数依赖集:
应该去掉F中无关的函数依赖、平凡函数依赖、函数依赖中的无关属性
无关函数依赖:
(1)如果A
X,且F逻辑蕴涵(F-{X→Y})
{(X-A)→Y},则称属性A是X→Y的左部的无关属性
(2)如果A
Y,且(F-{X→Y})
{X→(Y-A)}逻辑蕴涵F,则称属性A是X→Y的右部的无关属性
(3)如果X→Y的左右两边的属性都是无关属性,则函数依赖X→Y称为无关函数依赖
最小函数依赖应满足的四个条件:
(1)Fmin+=F+;
(2)每个函数依赖的右边都是单属性;
(3)Fmin中没有冗余的函数依赖;
(4)每个函数依赖的左边没有冗余的属性
计算F中的最小函数依赖集G
(1)对右边多于一个属性的函数依赖,用分解律进行等价替换
(2)依次判断左部非单属性的函数依赖,左部属性是否多余
(3)在G中消除冗余的函数依赖,从第一个函数依赖开始,从G中去掉它(设为X→Y),然后在剩下的函数依赖中求X+,看X+是否包含Y,若是,去掉X→Y
无损分解的测试算法:
某一行全为a,则为无损分解
若ρ中只包含两个关系模式时:
ρ={R1,R2}是关系模式R的一个分解,F是R上成立的函数依赖集,那么分解ρ相对于F的无损分解的充分必要条件是:
(R1
R2)→(R1-R2)或(R1
R2)→(R2-R1)
保持函数依赖的分解:
函数依赖集F应被F在这些Ri上的投影所蕴涵
无损连接分解不一定是保持函数依赖的,保持函数依赖的分解也不一定是无损连接的
范式:
衡量模式的标准,各个范式之间的联系5NF
4NF
BCNF
3NF
2NF
1NF
第一范式(1NF):
关系中的每一个属性都是不可再分的简单项
第二范式(2NF):
R
1NF,且每个非主属性都完全函数依赖与R的主关系键
2NF规范化:
把1NF投影分解,一事一地
第三范式(3NF):
2NF,且每个非主属性都不传递函数依赖于R的主关系键
3NF规范化:
把2NF投影分解,一事一地
BC范式;
1NF,且所有函数依赖X→Y,且决定因素X都包含了R的一个候选键
关系模式规范化的步骤:
(1)对1NF关系进行投影,消除原关系中非主属性对键的部分函数依赖,将1NF转化为2NF
(2)对2NF关系进行投影,消除原关系中非主属性对键的传递函数依赖,将2NF转化为3NF
(3)对3NF关系进行投影,消除原关系中主属性对键的部分函数依赖和传递函数依赖,将3NF转化为BCNF
(4)对BCNF关系进行投影,消除原关系中的非平凡且非函数依赖的多值依赖,将BCNF转化为4NF
数据库设计的任务:
是根据用户需求研制数据库结构的过程
数据库设计的内容:
(1)数据库的结构设计
(2)数据库的行为设计
数据库的设计方法:
直观设计法、规范设计法、计算机辅助设计法和自动化设计法
新奥尔良法:
将数据库设计分成需求分析(分析用户需求)、概念设计(信息分析和定义)、逻辑设计(设计实现)和物理设计(物理数据库设计)
常用的数据库规范设计方法:
1.基于E-R模型的数据库设计方法2.基于3NF的数据库设计方法3.基于视图的数据库设计方法
数据库设计步骤:
分析和设计:
1.系统需求分析阶段(数据流图)2.概念结构设计阶段(E-R图)3.逻辑结构设计阶段4.物理结构设计阶段
实施和运行:
5.数据库实施阶段6.数据库运行与维护阶段
需求分析的方法:
自顶向下(通常采用),自底向上
数据流图:
用命名的箭头表示数据流,用圆圈表示处理,矩形或其他形式表示存储
数据字典:
是对数据库数据的详细描述,包含数据项、数据结构、数据流、数据存储、处理过程
数据项:
数据最小单位
数据结构:
有意义的数据项集合
数据流:
可以是数据项,也可以是数据结构,他表示某一处理过程中数据在系统内传输的路径
概念结构设计:
用E-R图来描述信息结构但不涉及信息在计算机中的表示,主要目标是产生数据库的概念结构,该结构主要反映企业组织的信息需求
E-R图的冲突:
属性冲突、命名冲突、结构冲突
逻辑结构设计步骤:
(1)初始关系模式设计
(2)关系模式规范化(规范化理论是数据库逻辑设计的指南和工具)(3)模式的评价与改进
E-R图到初始关系模式的转换原则:
(1)一个实体转换成一个关系模式
(2)一个联系转换为一个关系模式
如果联系为1:
1,则每个实体的键都是关系的候选键
n,则n断实体的键是关系的键
如果联系为m:
n,则各实体键的组合是关系的键
物理结构设计:
1.确定物理结构,在关系数据库中主要指存取方法和存储结构
2.评价物理结构,评价的重点是时间和空间效率
确定物理结构:
1.存储记录结构的设计2.访问方法的设计3.数据存放位置的设计4.系统配置的设计
决定物理存储结构的主要因素:
存取时间、存储空间、维护代价
数据库实施包括:
建立实际数据库结构、装入数据、应用程序编码与调试、数据库试运行和整理文档
数据库运行和维护阶段的主要任务:
(1)维护数据库的安全性与完整性
(2)监测并改善数据库性能(3)重新组织和构造数据库
(1)查询T1老师所授课程的课程号和课程名