还有一周就期末考试了 ,是时候开始复习了,懒得写字,就在这里写写复习笔记记录些自己认为是重点的东西吧。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
数据库的四个基本概念
1.数据(Data)
描述事务的符号记录称为数据。 数据的含义称为语义,数据与其语义是不可分的。
2.数据库(DataBase,DB)
长期存储在计算机内,有组织的,可共享的大量数据的集合。
数据库数据特点:1.永久存储 2.有组织 3.可共享
3.数据库管理系统(DataBase Management System,DBMS)
位于用户与操作系统之间的一层数据管理软件。数据库管理系统和操作系统一样是计算机的基础软件。
4.数据库系统(DataBase System,DBS)
数据库系统由数据库(DB),数据库管理系统(DBMS),应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。
数据管理技术的三个阶段:
1.人工管理阶段
特点:数据不保存,应用程序管理数据,数据不共享,不具有独立性,应用程序管理数据。
2.文件系统阶段
特点:数据可以长期保存,由文件系统管理数据,但是数据共享性差,冗余度大,独立性差。
3.数据库系统阶段
特点:数据结构化,数据的共享性高,冗余度低且易扩充,数据独立性高(包括物理独立性和逻辑独立性),数据由数据库管理系统统一管理和控制。
数据模型是对现实世界数据特征的抽象,数据模型是数据库系统的核心和基础。
数据模型通常由数据结构,数据操作,数据的完整性约束条件三部分组成。
根据模型应用的不同目的,数据模型可以分为两大类,分别属于两个不同层次。
1.概念模型
也称信息模型,主要用于数据库设计。
概念模型实际上是现实世界到机器世界的一个中间层次。
概念模型用于信息世界的建模。
信息世界的基本概念:
1.实体:客观存在并可相互区别的事物。
2.属性:实体所具有的某一特征。
3.码:唯一标识实体的属性集。
4.实体型:用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。
5.实体集:同一类型实体的集合。
6.联系:实体内部联系指组成实体的各属性间的联系,实体间的联系可分为一对一,一对多,多对多三种。
概念模型的表示方法很多,最常用的为实体-联系方法(Entity-Relationship approach),该方法用E-R图来描述概念模型。E-R方法也成为E-R模型
2.逻辑模型和物理模型。
逻辑模型主要包括层次模型、网状模型、关系模型、面向对象模型和对象关系数据模型等。主要用于数据库管理系统的实现。
物理模型是对数据最底层的抽象。
1.层次模型
概念:有且只有一个结点没有双亲结点,称为根节点。根结点以外的其他结点有且只有一个双亲结点。
IBM公司的IMS数据库关系系统采用的是层次模型。
优点:1.数据结构简单清晰,2.查询效率高,3.良好的完整性支持。
缺点:1.现实世界很多联系是非层次的,2.对用户要求较高,用户必须清楚所用数据库的层次结构。
2.网状模型
概念:允许一个以上的结点无双亲,一个结点可以有多于一个双亲。
优点:1.可以更为直接的描述现实世界,2.具有良好的性能,存取效率高。
缺点:1.结构比较复杂,且随着应用环境的扩大,结构会越来越复杂,不利于用户掌握。
2.网状数据库的数据定义语言(DDL)和数据操作语言(DML)比较复杂,要求用户掌握数据库结构和存取路径,不容易使用。
3.关系模型
关系模型是最重要的一种数据模型.
概念:关系模型由关系数据结构,关系操作集合,关系完整性约束三部分组成。
在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。
关系模型中的一些术语:
1.关系:一个关系对应通常说的一张表。
2.属性:表中的一列即为一个属性。
3.域:属性的取值范围。
4.元组:表中的一行即为一个元组。
5.码:也称码键。表中的某个属性组,它可以唯一确定一个元组。
6.分量:元组中的一个属性值。
7.关系模式:对关系的描述,一般表示为 关系名(属性1,属性2,.....,属性n)
关系模型要求关系必须是规范化的,关系的每一个分量必须是一个不可分的 数据项。
关系模型的数据操纵主要包括查询、插入、删除和更新数据。
优点:1.关系模型与非关系模型不同,它具有严格的数学基础。
2.概念单一,所以其数据结构简单,清晰,用户易懂易用。
3.存取路径对用户透明(隐藏),具有更高的数据独立性,安全保密性,也简化了程序员的工作和数据库开发建立的工作。
缺点:最主要的是由于存取路径对用户透明,所以查询效率往往不如非关系数据模型。
-------------------------------------------------------------------------------------------------------------------------------------------------------
模式:数据库中全体数据的逻辑结构和特征的描述。
实例:模式的一个具体值。
模式是相对稳定的,实例是相对变动的。
数据库的三级模式结构是指数据库是由外模式,模式,内模式三级构成。
外模式:也称子模式或者用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述。
模式:也称逻辑模式,数据库中全体数据的逻辑结构和特征的描述。
内模式:也称存储模式,一个数据库只有一个内模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
外模式/模式映像:保证数据与程序的逻辑独立性,简称数据的逻辑独立性。
模式/内模式映像:保证数据的物理独立性
数据库系统的组成:
1.硬件平台及数据库
2.软件
3.人员(数据库管理员、系统分析员、数据库设计人员、应用程序猿、最终用户)
关系数据库系统是支持关系模型的数据库系统。
关系模型的数据结构非常简单,只包含单一的数据结构——关系。
在用户看来,关系模型中数据的逻辑结构是一张扁平的二维表。
关系数据结构的形式化定义
1.域:一组具有相同数据类型的值的集合。
2.笛卡尔积:域上的一种集合运算。一个域允许不同取值个数称为这个域的基数
3.关系:D1×D2×.......×Dn的子集叫做所在域D1,D2,.....,Dn上的关系,表示为R(D1,D2,.....Dn)
这里R表示关系的名字,n是关系的目或度。
关系中的每个元素是关系的元组,通常用t表示。
n=1时,该关系为单元关系,或一元关系。
n=2时,为二元关系。
若关系中的某一属性组的值能够唯一地标识一个元组,而其子集不能,则称该属性组为候选码。
若一个关系有多个候选码,则选定其中一个为主码。
候选码的诸属性称为主属性,不包括在任何候选码中的属性称为非主属性,或非码属性
在最简单的情况下,候选码只包含一个属性。在最极端的情况下,关系模式的所有属于是这个的候选码,称为全码
关系可以有三种类型:基本关系(通常又称为基本表或基表)、查询表和视图表
基本表是实际存在的表,查询表是查询结果对应的表,视图表是由基本表和其他视图表导出的表,是虚表。
基本关系具有以下6个性质:
1、列是同质的,即每一列中的分理是同一类型的数据,来自同一域。
2、不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名。
3、列的顺序无所谓,即列顺序是无关紧要的
4、任意两个 元组的候选码不能取相同的值
5、行的顺序无所谓,即行的顺序可以任意交换。
6、分量必须取原子值,即每一个分量都必须是不可分的数据项
关系的描述称为关系模式。它可以形式化的表示为 R(U,D,DOM,F)
其中R为关系名、U为组成关系的属性名集合、D为U中属性所来自的域。DOM是属性向域的映像集合、F 为属性间数据的依赖关系集合
关系模型的关系操作
基本的关系操作
关系模型中常用的关系操作包括查询、插入、删除、修改
查询又可以分为选择、投影、连接、除、并、差、交、笛卡尔积等、其中选择、投影、并、差、笛卡尔积是5 种基本的操作
关系操作的特点是集合操作方式,即操作的对象的结果都是集合
关系模式与关系的区别:关系模式是型,关系是值,是关系模式的实例。
关系模式是对关系的描述,关系是关系模式在某一时刻的状态或内容。
关系的完整性约束
关系模型中的三类完整性约束:实体完整性、参照完整性和用户自定义完整性
1.实体完整性
实体完整性规则:若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值。
对于实体完整性规则说明如下:
1、实体完整性规则是针对基本表关系而言的。一个基本表通常对应现实世界一个实体集。
2、现实世界中的实体是可区分的。即它们具有某种唯一性标识。
3、相应地,关系模型中以主码作为唯一性标识
4、主码中的属性即主属性不能取空值
2.参照完整性
定义: 设F是基本关系R的一个或一组属性,但不是关系R的码、K是基本关系S的主码。如果F与K相对应,则称为F是R的外码,并称基本关系R为参照关系,基本关系S为被参照关系或目标关系。
参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本准关系S的主码K相对应,则对于R中第一个元组F上的值必须:
1、或者取空值
2、或者等于S中某个元组的主码值
在参照完整性中,如果外码属性不是其所在关系的主属性,外码属性的值才可以取空值。
3.用户定义完整性
用户定义的完整性就是针对某一具体关系数据库的约束条件。
反映某一具体应用所涉及的数据必须满足的语义要求。
关系代数(这里不方便记录,但是重点!!!)
1、并(union)
U并S: t属于U或者属于S
2、差(excepte)
R 差S:t属于R且不属于S
3、交
R交S:r属于R且也属于S
4、笛卡尔积
R笛卡尔S: R中任意与S任意进行组合
专门的关系运算
1、选择:对行进行操作,
2、投影:对列进行操作
3、连接运算
自然连接:是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉。
4.除运算
SQL 结构化查询语言
特点:1.综合统一 SQL集数据定义语言、数据操纵语言、数据控制语言的功能于一体,语言风格统一。
2.高度非过程化 只需要提出“做什么”,无需指明“怎么做”
3.面向集合的操作方式 不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。
4.以同一种语法结构提供多种使用方式 SQL既是独立的语言,又是嵌入式语言。SQL语句可以嵌入到高级语言程序中。
5.语言简洁,易学易用。
DROP TABLE时,RESTRICT 表示表的删除是有限制条件的。要删除的基本表不能被其他表的约束所引用,不能有视图,不能有触发器,不能有存储过程或函数等,如果存在这些依赖该表的对象,则表不能被删除。
CASCADE表示表的删除没有限制条件,在删除基本表的同时,相关的依赖对象(如视图)都将被删除。
数据库安全性
数据库完整性
数据库完整性指数据的正确性和相容性。
实体完整性 检查主码是否唯一或者为空,若是,则拒绝插入或修改。
参照完整性 不一致时1.拒绝操作 2.级联操作(CASCADE)3.设置为空值
用户定义完整性 列值非空,列值唯一,检查列值是否满足一个条件表达式(CHECK语句)
思维导图版戳这里!
更多推荐
数据库系统概论知识点总结
发布评论