数据库原理教程考试总结.docx
- 文档编号:26850334
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:20
- 大小:33.92KB
数据库原理教程考试总结.docx
《数据库原理教程考试总结.docx》由会员分享,可在线阅读,更多相关《数据库原理教程考试总结.docx(20页珍藏版)》请在冰豆网上搜索。
数据库原理教程考试总结
第1章数据库系统概论
数据库技术主要研究如何科学地组织和存储数据,如何高效地获取和处理数据
数据处理(DataProcessing)数据处理指对数据的采集、组织、加工、变换、存储、检索和传输。
数据处理主要可分为三类:
⑴数据管理:
收集信息、将信息用数据表示并按类别组织保存,在需要的时候能够提供数据;
⑵数据加工:
对数据进行变换、抽取和运算,通过数据加工会得到更有用的数据,以指导或控制人的行为或事物的变化趋势;
⑶数据传输:
在空间或时间上以各种形式传播信息,而不改变数据的结构、性质和内容,使更多的人得到信息。
数据库(Database,DB)按一定的组织方式存储在一起的相关数据的集合。
数据库系统(DatabaseSystem,DBS)由计算机硬件、软件(包括操作系统(OS)、数据库管理系统(DBMS)、主语言、应用软件)、数据库和相关人员组成的计算机系统。
数据库管理系统(DatabaseManagementSystem,DBMS)DBMS是专门用于管理数据库的计算机系统软件。
数据库应用系统(DatabaseApplicationSystem)使用数据库技术管理数据的系统都称为数据库应用系统。
发展过程
人工管理阶段
文件系统阶段
数据库系统阶段
数据冗余即指数据的重复。
减少冗余数据可以节约存储空间、避免数据的不一致性。
数据共享可降低数据的冗余度,节省存储空间,同时可避免数据的不一致性,并使系统易于扩充。
数据独立性
⑴数据的物理独立性(PhysicalDataIndependence)
应用程序对数据存储结构(也称物理结构)的依赖程度。
数据物理独立性高是指当数据的物理结构发生变化时,应用程序不需要修改也可以正常工作。
⑵数据的逻辑独立性(LogicalDataIndependence)
应用程序对数据全局逻辑结构的依赖程度。
数据逻辑独立性高是指当数据库系统的数据全局逻辑结构改变时,它们对应的应用程序不需要改变仍可以正常运行。
数据结构化
整体数据的结构化是数据库的主要特征之一,数据库中实现的是数据的真正结构化。
数据的结构用数据模型描述,无需程序定义和解释。
数据可以变长。
数据的最小存取单位是数据项。
DBMS对数据的控制功能
⑴数据的安全性(Security)保护使每个用户只能按指定方式使用和处理指定数据,保护数据以防止不合法的使用造成的数据的泄密和破坏。
⑵数据的完整性(Integrity)检查将数据控制在有效的范围内,或保证数据之间满足一定的关系。
⑶并发(Concurrency)控制对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
⑷数据库恢复(Recovery)将数据库从错误状态恢复到某一已知的正确状态。
数据库系统的体系结构硬件组成软件组成系统人员组成
数据库管理系统功能结构
⒈数据定义功能数据定义语言(DataDescriptionLanguage,DDL)和相应的建库机制
⒉数据操纵功能数据操纵语言(DataManipulationlanguage,DML)
⒊数据库的建立和维护功能⒋数据库的运行管理功能
数据模式
用数据描述语言(DDL)给出的数据模型的精确描述称为数据模式。
⒈数据库的三级模式结构
数据库的三级模式是逻辑模式(模式)、外模式(子模式)、内模式(物理模式)。
⑴逻辑模式(Schema)及概念数据库
对数据库中数据的整体逻辑结构和特征的描述。
以逻辑模式为框架的数据库为概念数据库。
(2)外模式(ExternalSchema)及用户数据库
对各个用户或程序所涉及到的数据的逻辑结构和数据特征的描述。
以子模式为框架的数据库为用户数据库。
(3)内模式(InternalSchema)及物理数据库
数据的内部表示或底层描述。
以物理模式为框架的数据库为物理数据库。
⒉数据库系统的二级映象技术及作用
⑴外模式/模式的映象:
定义并保证了外模式与数据模式之间的对应关系。
它把用户数据库与概念数据库联系起来。
⑵模式/内模式的映象及作用:
定义并保证了数据的逻辑模式与内模式之间的对应关系。
它把概念数据库与物理数据库联系起来。
数据模型分成两个不同的层次:
⑴概念模型
也称信息模型,它是按用户的观点来对数据和信息建模。
⑵数据模型
主要包括网状模型、层次模型、关系模型、面向对象模型等,它是按计算机系统的观点对数据建模。
客观对象的抽象过程现实世界中的客观对象抽象为概念模型;把概念模型转换为某一DBMS支持的数据模型。
数据模型及组成要素数据模型是客观事物及其联系的数据描述。
数据模型的组成要素:
数据结构对象类型的集合。
数据结构是对系统静态特性的描述。
数据操作对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则数据操作是对系统动态特性的描述
数据的约束条件一组完整性规则的集合反映和规定本数据模型必须遵守的基本的通用的完整性约束条件。
完整性规则:
给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。
⑴实体(Entity)客观存在并可相互区别的事物称为实体。
可以是具体的人、事、物或抽象的概念。
⑵属性(Attribute)实体所具有的某一特性称为属性。
一个实体可以由若干个属性来刻画。
⑶码(Key)能够唯一标识实体的属性或属性集称为码。
⑷域(Domain)属性的取值范围称为该属性的域。
⑸实体型(EntityType)用实体名及其属性名集合来抽象和刻画。
同类实体称为实体型。
⑹实体集(EntitySet)同型实体的集合称为实体集。
⑺联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
一对一联系:
如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然
一对多联系:
如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系
多对多联系如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系
E-R图实体型:
用矩形表示,矩形框内写明实体名。
属性:
用椭圆形(圆角矩阵)表示,并用无向边将其与相应的实体型连接起来。
联系用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:
1、1:
n或m:
n)。
联系的属性:
联系本身也是一种实体型,也可以有属性。
如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来。
E-R图设计应经过以下两个阶段:
⑴针对每一用户画出该用户信息的局部E-R图,确定该用户视图的实体、属性和联系。
需注意的是:
能作为属性的就不要作为实体,将有利于E-R图简化。
⑵综合局部E-R图,生成总体E-R图。
在综合过程中,同名实体只能出现一次,还要去掉不必要的联系,以便消除冗余。
一般来说,从总体E-R图必须能导出原来的所有局部视图,包括实体、属性和联系。
E-R图转换为关系模型应遵循如下原则:
⑴对于E-R图中每个实体集,都应转换为一个关系,该关系应包括对应实体的全部属性,并应根据关系所表达的语义确定哪个属性或哪几个属性组作为“主关键字”,主关键字用来标识实体。
⑵对于E-R图中的联系,情况比较复杂,要根据实体联系方式的不同,采取不同的手段加以实现。
层次模型满足下面两个条件的基本层次联系的集合为层次模型:
⑴有且仅有一个结点没有双亲结点,这个结点称为根结点。
⑵根以外的其它结点有且只有一个双亲结点
网状模型的数据结构
⑴有一个以上的结点没有双亲。
⑵结点可以有多于一个的双亲。
关系操作和完整性约束条件:
关系操作主要包括数据查询、插入、修改和删除;
关系中的数据操作是集合操作;
关系操作语言都是高度非过程的语言。
关系的完整性约束条件包括三类:
实体完整性;参照完整性;用户定义的完整性。
关系模型与非关系模型比较关系数据模型建立在严格的数学基础之上;关系数据模型的概念单一,容易理解;关系数据模型的存取路径对用户隐蔽;关系模型的数据联系依靠数据冗余实现
第2章关系数据库
笛卡尔积(CartesianProduct)给定一组域D1,D2,…,Dn,这些域中可以有相同的部分,则笛卡儿积为:
D1×D2×…×Dn={(d1,d2,…dn)|di∈Di,i=1,2,…,n}.
笛卡尔积的表示方法:
笛卡尔积可表示为一个二维表。
表中的每行对应一个元组,表中的每列对应一个域。
关系中的基本名词
⑴元组:
关系表中的每一横行称作一个元组,组成元组的元素为分量。
⑵属性:
关系中的每一列称为一个属性。
⑶候选码、主码、全码:
若关系的候选码中只包含一个属性,则称它为单属性码;若候选码是由多个属性构成的,则称为它为多属性码。
若关系中只有一个候选码,且这个候选码中包括全部属性,则这种候选码为全码。
⑷主属性和非主属性:
关系中,候选码中的属性称为主属性,不包含在任何候选码中的属性称为非主属性。
数据库中基本关系的性质⑴同一属性的数据具有同质性。
⑵同一关系的属性名具有不能重复性。
⑶关系中的列位置具有顺序无关性。
⑷关系具有元组无冗余性。
⑸关系中的元组位置具有顺序无关性。
⑹关系中每一个分量都必须是不可分的数据项。
关系数据库在某一应用领域中,所有实体集及实体之间联系所形成关系的集合就构成了一个关系数据库。
表示为:
R(U,D,Dom,F)
R为关系名,它是关系的形式化表示;
U为组成该关系的属性集合;
D为属性组U中属性所来自的域;
Dom为属性向域的映象的集合;
F为属性间数据的依赖关系集合。
实体完整性规则(EntityIntegrity)若属性A是基本关系R的主属性,则属性A不能取空值。
参照完整性⒈关系间的引用⒉外码设F是基本关系R的一个或一组属性,但不是关系R的码。
如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码。
⒊参照完整性规则若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
⑴或者取空值(F的每个属性值均为空值);
⑵或者等于S中某个元组的主码值。
在用户定义完整性中最常见的是限定属性的取值范围,即对值域的约束,所以在用户定义完整性中最常见的是域完整性约束。
关系操作的基本内容包括数据查询、数据维护和数据控制三大功能。
关系操作的特点⑴关系操作语言操作一体化⑵关系操作的方式是一次一集合方式
⑶关系操作语言是高度非过程化的语言
关系操作语言的种类⑴关系代数语言 ⑵关系演算语言⑶基于映象的语言
求选修了课程号为“C2”课程的学生学号。
π学号(σ课程号=‘C2’(选课))
求选修了课程号为“C2”课的学生学号和姓名。
π学号,姓名(σ课程号=‘C2’(选课 学生))
求没有选修课程号为“C2”课程的学生学号。
π学号(学生)-π学号(σ课程号=‘C2’(选课))
求既选修“C2”课程,又选修“C3”课程的学生学号。
π学号(σ课程号=‘C2’(选课))∩π学号(σ课程号=‘C3’(选课))
求选修课程号为“C2”或“C3”课程的学生学号。
π学号(σ课程号=‘C2’(选课))∪π学号(σ课程号=‘C3’(选课))
或π学号(σ课程号=‘C2’∨课程号=‘C3’(选课))
求选修了全部课程的学生学号。
π学号,课程号(选课÷课程)
一个学号为“98002”的学生所学过的所有课程可能也被其他学生选修,求这些学生的学号和姓名。
π学号,姓名((π学号,课程号(选课)÷π课程号(σ学号=‘98002’(选课)))(学生))
第三章关系数据库标准语言SQL
⒈SQL的特点 ⑴一体化的特点集DDL、DML、DCL为一体。
⑵两种使用方式、统一的语法结构SQL具有自含式和嵌入式两种形式。
⑶高度非过程化⑷SQL具有语言简洁、易学易用的特点 ⑸SQL支持三级模式结构①全体基本表构成了数据库的模式。
②视图和部分基本表构成了数据库的外模式。
③数据库的存储文件和它们的索引文件构成了关系数据库的内模式。
⒈索引的作用⑴使用索引可以明显地加快数据查询的速度。
⑵使用索引可保证数据的惟一性。
⑶使用索引可以加快连接速度。
⒉建立索引的原则⑴索引的建立和维护由DBA和DBMS完成。
⑵大表应当建索引,小表则不必建索引。
⑶对于一个基本表,不要建立过多的索引。
⑷根据查询要求建索引。
视图的优点⑴视图能够简化用户的操作。
⑵视图机制可以使用户以不同的方式看待同一数据。
⑶视图对数据库的重构提供了一定程度的逻辑独立性。
⑷视图可以对机密的数据提供安全保护。
数据控制的方法
⒈授权定义
具有授权资格的用户,如数据库管理员DBA或建表用户DBO,通过数据控制语言DCL,将授权决定告知数据库管理系统。
⒉存权处理
数据库管理系统DBMS把授权的结果编译后存入数据字典中。
⒊查权操作
当用户提出操作请求时,系统要在数据字典中查找该用户的数据操作权限,当用户拥有该操作权时才能执行其操作,否则系统将拒绝其操作。
SQLServer的数据库操作权限
⒈隐含特权
系统内置权限,是用户不需要进行授权就可拥有的数据操作权。
⒉系统特权
又称为语句特权,相当于数据定义语句DDL的语句权限。
系统特权是允许用户在数据库内部实施管理行为的特权,它主要包括创建或删除数据库、创建或删除用户、删除或修改数据库对象等。
⒊对象特权
对象特权类似于数据库操作语言DML的语句权限,它指用户对数据库中的表、视图、存储过程等对象的操作权限。
几种不需要使用游标的SQL语句⑴用于说明主变量的说明性语句⑵数据定义和数据控制语句
⑶查询结果为单记录的查询语句⑷数据的插入语句和某些数据删除、修改语句
第四章关系数据库设计理论
数据依赖定义属性值间的相互关连(主要体现于值的相等与否),就是数据依赖,它是数据库模式设计的关键。
数据依赖的类型函数依赖FD多值依赖MVD
数据依赖对关系模式的影响
⒈数据冗余太大⒉更新异常(UpdateAnomalies)⒊插入异常(InsertionAnomalies)
⒋删除异常(DeletionAnomalies)
函数依赖设R(U)是一个属性集U上的关系模式,X和Y是U的子集。
若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称“X函数确定Y”或“Y函数依赖于X”,记作X→Y。
X称为这个函数依赖的决定属性集(Determinant)。
在关系模式R(U)中,对于U的子集X和Y,
如果X→Y,但YÍX,则称X→Y是非平凡的函数依赖
若X→Y,但YÍX,则称X→Y是平凡的函数依赖
主属性(Primeattribute):
一个属性只要在任何一个候选码中出现过,这个属性就是主属性。
全码(ALLKEY):
关系模式的所有属性是这个关系模式的候选码
范式是符合某一种级别的关系模式的集合。
1NF的定义如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF。
2NF定义若关系模式R∈1NF,并且每一个非主属性都完全函数依赖于R的码,则R∈2NF。
3NF定义关系模式R中若不存在这样的码X、属性组Y及非主属性Z(ZÍY),使得X→Y,Y→X,Y→Z成立,则称R∈3NF。
BCNF设关系模式R∈1NF,如果对于R的每个函数依赖X→Y,若Y不属于X,则X必含有候选码,那么R∈BCNF若R∈BCNF每一个决定属性集(因素)都包含(候选)码
多值依赖设R(U)是一个属性集U上的一个关系模式,X、Y和Z是U的子集,并且Z=U-X-Y,多值依赖X→→Y成立当且仅当对R的任一关系r,r在(X,Z)上的每个值对应一组Y的值,这组值仅仅决定于X值而与Z值无关。
4NF关系模式R∈1NF,如果对于R的每个非平凡多值依赖X→→Y(YÍX),X都含有候选码,则R∈4NF。
1NF
↓消除非主属性对码的部分函数依赖
消除决定属性2NF
集非码的非平↓消除非主属性对码的传递函数依赖
凡函数依赖3NF
↓消除主属性对码的部分和传递函数依赖
BCNF
↓消除非平凡且非函数依赖的多值依赖
4NF
关系模式分解的标准:
三种模式分解的等价定义
⒈分解具有无损连接性;
⒉分解要保持函数依赖;
⒊分解既要保持函数依赖,又要具有无损连接性。
分解具有无损连接性和分解保持函数依赖是两个互相独立的标准
第6章SQLSERVER2000数据库设计
1.物理数据库和逻辑数据库
物理数据库由构成数据库的物理文件构成。
SQLServer2000的一个物理数据库中至少有一个数据库信息文件和一个数据库事务日志文件。
物理数据库由DBA(数据库管理员)负责创建和管理。
逻辑数据库是数据库中用户可视的表或视图,用户利用逻辑数据库的数据库对象,存储或读取数据库中的数据。
2.系统数据库和用户数据库
系统数据库是由系统创建和维护的数据库。
系统数据库中记录着SQLServer2000的配置情况、任务情况和用户数据库的情况等系统管理的信息,它实际上就是我们常说的数据字典。
用户数据库是根据管理对象要求创建的数据库,用户数据库中保存着用户直接需要的数据信息。
SQLServer2000的六个系统数据库
1.Master数据库
SQLServer系统中最重要的数据库,记录了SQLServer系统的所有系统信息。
这些系统信息包括所有的登录信息、系统设置信息、SQLServer的初始化信息和其它系统数据库及用户数据库的相关信息。
Master数据库的主文件名为Master.mdf,日志文件为Masterlog.ldf。
2.Model数据库
是所有用户数据库和Tempdb数据库的模板数据库,它含有Master数据库所有系统表的子集,这些系统数据库是每个用户定义数据库需要的。
Model数据库的主文件是model.mdf,日志文件为model.ldf。
3.Msdb数据库
代理服务数据库,为其警报、任务调度和记录操作员的操作提供存储空间。
Msdb中记录着任务计划信息、事件处理信息、数据备份及恢复信息和警告及异常信息。
Msdb的主文件名为Msdb.mdf,日志文件名为Msdb.ldf。
4.Tempdb
临时数据库,它为所有的临时表、临时存储过程及其它临时操作提供存储空间。
tempdb的主文件名和日志文件名分别为tempdb.mdf和tempdb.ldf。
5.Pubs和Northwind数据库
是两个实例数据库,可作为SQLServer的学习工具。
几个最重要的系统表
1.Sysobjects表
SQLServer的主系统表sysobjects出现在每个数据库中,它对每个数据库对象含有一行记录。
2.Syscolumns表
系统表syscolumns出现在master数据库和每个用户自定义的数据库中,它对基表或者视图的每个列和存储过程中的每个参数含有一行记录。
3.Sysindexes表
系统表sysindexes出现在master数据库和每个用户自定义的数据库中,它对每个索引和没有聚簇索引的每个表含有一行记录,它还对包括文本/图像数据的每个表含有一行记录。
4.Sysusers表
系统表sysusers出现在master数据库和每个用户自定义的数据库中,它对整个数据库中的每个WindowsNT用户、WindowsNT用户组、SQLServer用户或者SQLServer角色含有一行记录。
5.Sysdatabases表
系统表sysdatabases对SQLServer系统上的每个系统数据库和用户自定义的数据库含有一行记录,它只出现在master数据库中。
6.Sysdepends表
系统表Sysdepends对表、视图和存储过程之间的每个依赖关系含有一行记录,它出现在master数据库和每个用户自定义的数据库中。
7.Sysconstraints表
系统表sysconstraints对使用CREATETABLE或者ALTERTABLE语句为数据库对象定义的每个完整性约束含有一行记录,它出现在master数据库和每个用户自定义的数据库中。
SQLServer2000的三种物理文件
主数据库文件(PrimaryDatabaseFile)
主数据库文件用于容纳数据库对象,它使用.mdf作为文件扩展名。
辅数据库文件(SecondaryDatabaseFile)
当数据库中的数据较多时需要建立辅助数据文件。
一个数据库中可以没有、也可以有一个或多个辅助数据文件。
辅助数据文件的扩展名为.ndf。
事务日志文件
用于存放数据库日志信息的文件。
一个数据库可以有一个或多个日志文件。
日志文件的扩展名为.ldf。
数据库文件的两种组件
页:
使用的最小数据单元,一页可以容纳8k的数据。
页有8种类型:
数据页、索引页、文本/图像页、全局分配映射表页、页空闲空间、索引分配映射表页、大容量更改映射表页和差异更改映射表页。
扩展盘区:
扩建表和索引的基本单位,一个扩展盘区由8个相邻页的构成。
文件组
为了便于分配和管理,SQLServer允许将多个文件归纳为同一组,并赋予此组一个名称,这就是文件组。
与数据库文件一样,文件组也分为主文件组(PrimaryFileGroup)和次文件组(SecondaryFileGroup)。
SQLServer2000中有5种约束主键约束唯一性约束检查约束缺省约束外部键约束
聚集索引与非聚集索引
聚集索引对表的物理数据页中的数据按列进行排序,然后再重新存储到磁盘上,即聚集索引与数据是混为一体的,它的叶节点中存储的是实际的数据。
非聚集索引具有完全独立于数据行的结构,使用非聚集索引不用将物理数据页中的数据按列排序。
非聚集索引的叶节点存储了组成非聚集索引的关键字值和行定位器。
数据库对象
(1)表和视图:
表是在数据库中存放的实际关系。
视图是为了用户查询方便或根据数据安全的需要而建立的虚表。
(2)角色:
由一个或多个用户组成的单元,也称职能组。
一个用户可以成为多个角色中的成员。
(3)索引:
加速数据访问和保证表的实体完整性的数据库对象。
索引有群聚和非群聚索引两种。
群聚索引会使表的物理顺序与索引顺序一致,一个表只能有一个群聚索引;非群聚索引与表的物理顺序无关,一个表可以建立多个非群聚索引。
(4)存储过程:
通过Transact-SQL编写的程序。
包括系统存储过程和用户存储过程:
系统存储过程是由SQLServer2000提供的,其过程名均以SP、XP开头;用户过程是由用户编写的,它可以自动执行过程中安排的任务。
(5)触发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 教程 考试 总结