数据库原理复习提纲期末Word下载.docx
- 文档编号:4708712
- 上传时间:2023-05-03
- 格式:DOCX
- 页数:16
- 大小:144.22KB
数据库原理复习提纲期末Word下载.docx
《数据库原理复习提纲期末Word下载.docx》由会员分享,可在线阅读,更多相关《数据库原理复习提纲期末Word下载.docx(16页珍藏版)》请在冰点文库上搜索。
2数据模型
2.1数据模型的基本概念
数据模型(DataModel):
现实世界数据特征的抽象,用来定义数据如何组织,数据之间的关系怎样
Database:
Acollection(集合)ofrelateddata.
2.2数据模型的分类及每类常用的数据模型
数据模型的层次:
Conceptual(概念模型):
按用户的观点来对数据和信息建模
Logical(Implementation)(逻辑/实现模型)
层次模型
网状模型
关系模型
Physical(物理模型):
数据在具体DBMS产品(IBM、Microsoft、Oracle)中的物理存储方式
2.3数据模型的组成要素
数据结构:
对系统静态特征的描述
数据操作:
对系统动态特征的描述
检索(查询)
更新(插入、删除、修改:
增删改)
数据的约束条件:
完整性约束规则
2.4E-R概念模型(Entity-RelationshipModel)的基本概念(数据结构):
实体(Entity),属性(Attribute),码/键(Key),域(Domain)
实体型(EntityType),实体集(EntitySet)
2.5逻辑数据模型(LogicalDataModel):
关系模型(RelationalDataModel)
以严格的数学理论为基础:
谓词逻辑(predicatelogic)、集合论(settheory)
目前主流的数据库系统都是基于“关系模型”的
面向对象模型
对象关系模型
主键(PrimaryKey)、外键(ForeignKey):
一个表的外键必然是与之关联表的主键
3数据库系统结构
3.1数据库模式和实例的概念以及区别
Schema(模式)与Instance(实例)
Schema:
Thedescriptionofadatabase.Includesdescriptionsofthedatabasestructure,datatypes,andtheconstraintsonthedatabase.(描述一个数据库。
包括描述数据库结构、数据类型,并对数据库的约束。
)
Instance(State):
Theactualdatastoredinadatabaseataparticularmomentintime.Thisincludesthecollectionofallthedatainthedatabase.(实际存储在数据库中数据在特殊时刻。
这包括收集所有的数据在数据库中。
区别:
Instance是Schema在某一时刻的具体化、实例化(类似于面向对象理论中Class与Object的关系)Schemaisalsocalledintension(内涵).Stateisalsocalledextension(外延).
3.2数据库系统的三级模式结构(Three-SchemaArchitecture)
Internalschema(内模式,也称存储模式):
数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
通常使用物理数据模型描述
Conceptualschema(概念模式,也称全局模式,有时简称“模式”):
数据库中全体数据的逻辑结构和特征的描述。
通常使用概念或逻辑数据模型描述
Externalschemas(外模式,也称子模式或用户模式):
数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述。
通常使用与概念模式相同的数据模型描述
模型(Model)与模式(Schema)的区别
数据模型是描述数据的一种通用形式,模式则是用给定的数据模型描述具体数据。
注意:
真正的数据内容保存在数据库状态(State)中
3.2数据库系统的两级映像功能与数据独立性
两级映射(Mapping)
概念模式/内模式映射
外模式/概念模式映射
数据独立性
物理独立性(PhysicalDataIndependence)
逻辑独立性(LogicalDataIndependence)
数据的物理独立性:
内模式与概念模式之间的映射提供了数据的物理独立性。
当数据的物理结构发生变化时,如对数据增加索引、改变数据的存储位置、改变存储设备等,不影响数据的逻辑结构。
当DBA根据应用程序对数据的存取要求,对数据的物理组织进行优化后,并不需要对概念模式和外模式进行重新定义,也不需要修改应用程序,只需要修改内模式与概念模式之间的映射。
数据的逻辑独立性:
概念模式与外模式之间的映射提供了数据的逻辑独立性。
当数据的整体逻辑结构发生变化时,如增加新的关系、新的属性、改变属性的数据类型等,可以通过修改各个外模式与概念模式之间的映射,从而使外模式和依据外模式编写的应用程序不受影响
3.3数据库系统外部体系结构分类:
CentralizedArchitecture
Combineseverythingintosinglesystemincluding:
DBMSsoftware,hardware,applicationprograms,anduserinterfaceprocessingsoftware.(结合成一个系统都包括:
数据库管理系统的软件、硬件、应用程序和用户界面处理的软件。
Usercanstillconnectthrougharemoteterminal(终端)–however,allprocessingisdoneatcentralizedsite.
3.4三层客户机-服务器架构的概念:
Presentationlayer(表现层):
负责展示用户界面,以及与用户的交互。
Businesslogiclayer(Middlelayer:
业务逻辑层或中间层):
负责接收来自表示层的请求,并根据它包含的业务逻辑给表示层返回一个结果。
Databaseserviceslayer(数据库服务层):
负责存储应用程序的数据,并在接收到请求时,把这些数据发送给业务层。
4关系数据库基础
4.1关系模型的基本概念
关系模式:
关系(二维表)
数据操作
查询操作(重点)
增、删、改操作
完整性约束:
实体完整性、参照完整性及用户定义的完整性
关系的前两种定义:
Intheformalrelationalmodelterminology,arowiscalledatuple(元组),acolumnheaderiscalledanattribute(属性),andthetableiscalledarelation(关系).
Thedatatypedescribingthetypesofvaluesthatcanappearineachcolumniscalledadomain(域)
AdomainDisasetofatomicvalues.Byatomic(原子的、不可再分的)wemeanthateachvalueinthedomainisindivisible(不可分割的).
域是一组具有相同数据类型、格式、度量单位的“原子”值的集合,用于表示属性的取值范围
例如:
院系域:
{1,2,3,4,……,最大院系编号}。
关系与关系模式的区别
4.2关系的类型:
基本关系(基本表)
实际存在的表,是实际存储数据的逻辑表示
查询表查询结果对应的表视图表(虚表,不占存储空间)
由基本表或其他视图表导出的表
集合的性质:
集合的元素是彼此不同的,集合的元素是无序的
4.3关系的性质
列是同质的,即每一列中的分量是同一类型的数据,来自同一个域
关系中的元组(行)无先后顺序
关系中的属性(列)无先后顺序。
Composite(复合)multivalued(多值的)
Alltuplesinarelationmustbedistinct(独一无二的)
若一个关系有多个候选键,则选定其中一个为主键(PrimaryKey)
什么是复合属性:
CompositeAttributes(复合属性)
多值属性:
MultivaluedAttributes(多值属性)
4.4关系数据库(RelationalDatabases)和关系数据库模式(RelationalDatabaseSchemas)
ArelationaldatabaseschemaSisasetofrelationschemasS={R1,R2,...,Rm}andasetofintegrityconstraints(完整性约束)IC.Arelationaldatabasestate(instance)DBofSisasetofrelationstatesDB={r1,r2,...,rm}suchthateachriisastateofRiandsuchthattherirelationstatessatisfytheintegrityconstraintsspecifiedinIC.
4.5什么是完整性约束,五种约束的概念
什么是约束:
Constraintsareconditionsthatmustholdonallvalidrelationstates.
约束是指所有有效关系状态必须满足的条件
DomainConstraints(域约束)
DomainconstraintsspecifythatthevalueofeachattributeAmustbeanatomicvaluefromthedomaindom(A).
性别只能是“男”或“女”,民族只能是56个民族之一,而不能是其他的值。
KeyConstraints(键约束)
Arelationisdefinedasasetoftuples.Bydefinition,allelementsofasetaredistinct;
hence,alltuplesinarelationmustalsobedistinct
每个关系必须要有主键,且每个元组的主键值不得重复
ConstraintsonNull(非空约束)
学生姓名不允许为空
实体完整性(EntityIntegrity)约束
Noprimarykeyvaluecanbenull
复合主键的各属性都不能取空值,而不仅是主键整体不能取空值
参照完整性(ReferentialIntegrity)约束
外键或者取Null值(在允许为Null的情况下)
如果外键是主属性(组成键的属性),则不允许为空
外键或者等于其被参照关系某个元组的主键值
数据操作(增、删、改操作)
4.6关系代数八种运算的符号、意义及表示方法。
在这八种运算中哪些属于基本运算?
选择
投影
并:
属于关系R或属于关系S的元组组成的集合,R∪S={t|t∈R∨t∈S}
列:
查询在部门5工作的人或直接领导在部门5工作员工的人的社会保险号信息
交:
定义既属于关系R又属于关系S的元组组成的集合
R∩S={t|t∈R∧t∈S}
R∩S=R-(R-S)
差:
定义由属于关系R而不属于关系S的元组组成的集合
R-S={t|t∈R∧tÏ
S}
笛卡尔积
连接
除
示例:
查询有家属的女性员工姓名及其家属姓名:
4.7什么叫“并兼容”的两个关系?
哪些关系代数运算要求两个关系必须是“并兼容”的?
Thesetofrelationalalgebraoperations{∪,-,×
,σ,π}isacompleteset(完备集).
在关系代数运算中,集合的并运算、差运算、笛卡尔积运算以及选择运算和投影运算是五种基本运算,另三种运算(集合的交运算以及连接运算和除运算)可以用五种基本运算来表达,引进它们并不增加语言的能力,但是可以简化表达。
4.8什么叫“重复消除”?
4.9什么叫THETA连接、等值连接、自然连接?
三者的区别是什么?
5SQL语言
5.1SQL语言的功能组成
数据查询(DataQueryLanguage(DQL)),数据操纵(DataManipulation),
数据定义(DataDefinition),数据控制(DataControl)
5.2SQL语言的特点
综合统一,高度非过程化,面向集合的操作方式,语言简捷,易学易用,以同一种语法结构提供两种使用方式[独立嵌入]
COUNT只能统计元组或一个属性的个数
5.3SQL中的表和关系模型中关系的区别
5.4单表查询,主要掌握以下SQL语句用法,并复习实验2相关部分
(1)不带元组筛选条件的单表查询
(2)重命名查询结果关系列名
(3)筛选元组
IN、BETWEEN、DISTINCT、LIKE的用法
(4)三值逻辑与空值检查
(5)查询结果排序
(6)返回“计算列”
(7)五个汇总函数的用法
COUNT
SUM
MAX
MIN
AVG
(8)分组及对分组的筛选
--------------------------------------
所有用于单表的查询技术都可以用于多表查询,多表只不过是把单表按照一定连接条件(joincondition)连接成一张“大表”
5.5多表连接查询,主要掌握以下SQL语句用法,并复习实验2相关部分
(1)内联接
(2)外联接
(3)交叉联接
(4)自联接
5.6子查询,主要掌握以下SQL语句用法,并复习实验2相关部分
(1)带有IN谓词的子查询
(2)带有比较运算符的子查询
(3)带有ANY或ALL谓词的子查询
(4)带有EXISTS谓词的子查询
只需掌握一层EXISTS,即不需掌握例C和例D
(5)“不相关子查询”与“相关子查询”的区别
不相关子查询(non-correlatedsubquery)
子查询只执行一次,其结果用于父查询。
子查询的查询条件不依赖于父查询
相关子查询(correlatedsubquery)
子查询的查询条件依赖于外层父查询的某个属性值
主要是指“带有EXISTS谓词的子查询”
(嵌套查询定义:
将一个查询块(SELECT-FROM-WHERE)嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询)
5.7集合查询,主要掌握以下SQL语句用法,并复习实验2相关部分
SELECT语句查询的结果是元组的集合,所以多个SELECT语句的查询结果可进行集合操作
集合操作符
并Union
交Intersect(SQLSERVER不支持)
差Difference(SQLSERVER不支持)
Oracle:
MINUS
DB2:
EXCEPT
5.8数据的增、删、改(利用SQL语言),并复习实验3相关部分
插入数据
插入单个元组
插入子查询结果
修改数据
修改符合一定条件元组的值
修改所有元组的值
带子查询的修改语句
删除数据
删除符合一定条件元组
删除所有元组
带子查询的删除语句
5.9DDL数据定义语言,主要掌握以下SQL语句用法,并复习实验3相关部分
(1)创建数据库(简易版)
(2)删除数据库
(3)创建数据库表:
指定数据类型、是否运行为空、标识列
(4)修改数据库表:
增加列、修改列、删除列
(5)删除数据库表
(6)完整性约束条件
1完整性约束条件的分类:
按作用对象、按状态
2默认值约束
3对数据格式的约束
4对取值范围或取值集合的约束
5元组级约束
6主键约束
7外键约束
8禁用约束
9启用约束
10删除约束
(7)视图的概念
视图是虚拟的表(avirtualtable),保存在视图中的数据并不是物理存储的数据,而是由基本表或其他视图派生的
(8)视图的优点
提供了一定程度的逻辑独立性
为用户集中数据,保证数据安全性
(9)视图的创建
CREATEVIEW<
视图名>
[(<
列名>
[,<
]……)]
AS<
子查询>
[WITHCHECKOPTION]
其中,子查询可以是任意复杂的SELECT语句,但通常不允许含有ORDERBY子句和DISTINCT短语。
(10)视图的修改
(11)删除视图:
dropview
(12)查询视图的步骤3步:
有效性检查
安全性检查
视图消解
(13)视图的更新
可以通过更新视图的方式实现对表中数据的更新。
视图的更新操作包括插入、修改和删除数据
视图是一张虚表,所以对视图的更新,最终实际上是转换成对视图的底层表的更新
1视图可更新性的基本判断原则
视图中的每一列都必须和一个基本表中的一个源列对应
视图中的每一行都必须和一个基本表中的一个源行对应
2视图可更新性的具体判断标准
Noaggregatefunctions(AVG,COUNT,SUM,MIN,MAX,GROUPING,STDEV,STDEVP,VAR,andVARP)orGROUPBY,UNION,DISTINCT,orTOPclausesareusedintheselectlist.
(没有集中的功能或团体、工会、层次分明,或顶部条款适用于选择列表。
Noderivedcolumns(导出列或者计算列)areusedintheselectlist.Derivedcolumnsareresultsetcolumnsformedbyanythingotherthanasimplecolumnreference.
(没有派生字段导出列或者计算列,是用来在选择列表。
推导结果集列栏目所形成的其他事情比一个简单的柱参考。
3WITHCHECKOPTION的作用
4为什么要通过视图更新数据
可以限制用户可更新的底层表中的列和行;
使列名具有更好的描述性
6数据库设计
6.1数据库设计的基本过程
6.2掌握E-R建模和绘制E-R图的方法
6.3掌握将E-R模型转换为关系模型的方法
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 复习 提纲 期末