
数据库系统及应用 note
文章目录Ch1 数据库系统概论1.1 数据库基本概念1.2 数据管理技术的产生和发展1 人工管理阶段2 文件系统阶段3 数据库管理系统阶段1.3 数据模型1 概念数据模型2 逻辑数据模型层次模型网状模型关系模型*面向对象模型*1.4 DBMS的功能和特点功能特点1.5 DBS的物理组成 和 模式结构1.6 常用DBMS产品介绍Ch2 关系模型与关系代数2.1 关系模型的基本概念2.2 关系模型的数
Ch1 数据库系统概论
1.1 数据库基本概念
-
Data
– 数据必须是保存在计算机中,能够被计算机识别、存储、处理的。数据是信息的载体。
-
Information
– 信息是经过加工后的数据,是对数据的具体描述。
-
Database,DB
– 长期存储在计算机内的、有组织的、可共享的大量数据的集合。
-
Database Managing System,DBMS
– 位于用户与操作系统之间的一层数据管理软件,作用是 使数据称为方便各种用户使用的资源,并提高数据的安全性、完整性和可用性。
-
Metadata
– 元数据即描述数据的数据,相当于数据字典。主要是描述数据属性(property)的信息,如数据的类型,格式,存储大小等。
-
Database System,DBS
1.2 数据管理技术的产生和发展
1 人工管理阶段
- 数据不能共享
- 数据无独立性
2 文件系统阶段
特点:
- 数据以“文件”形式可长期保存在外部存储器的磁盘上
- 数据的逻辑结构与物理结构有了区别,但比较简单
不足:
- 数据冗余
- 不一致性【由数据冗余造成的,同样的数据在不同文件中不一致】
- 数据联系弱
3 数据库管理系统阶段
- 采用数据模型表示复杂的数据结构
- 有较高的数据独立性
- 数据库系统为用户提供了方便的用户接口 DAO【data access object】
- 数据库系统提供了数据控制功能
- 数据库的并发控制
- 数据库的恢复
- 数据完整性
- 数据安全性
1.3 数据模型
数据模型的基本概念
– 数据模型是对现实世界数据特征的抽象 和 对现实世界的模拟。
数据模型的组成要素 三要素
- 数据结构
- 数据操作
- 数据完整性
1 概念数据模型
概念数据模型(Conceptual Data Model)是用户容易理解的、对现实世界特征的数据抽象,它与具体的DBMS无关,是数据库设计员与用户之间进行交流的语言。常用的概念数据模型是 实体-联系(Entity-Relationship)模型。
E-R图的表示规则:实体集用矩形,属性用椭圆形,联系用菱形。
2 逻辑数据模型
逻辑数据模型即数据模型,是用户从数据库中所看到的数据模型,是具体的DBMS所支持的数据模型。
主要有 层次模型、网状模型、关系模型*、面向对象模型*。
层次模型
– 用**树形(层次)**结构来表示各类实体以及实体间的联系,每一结点表示一个记录类型(实体型),每个记录类型包含若干个字段(实体的属性)。层次模型数据结构简单清晰。
缺点:
- 实现复杂
- 难以管理
- 实现的限制【不完全是1:m标准】
- 缺乏标准
- 缺乏结构独立性
- 应用程序编写 和 使用 复杂性
优点:对1:m的树形数据结构描述自然、直观、容易理解。
网状模型
– 一种比层次模型更具普遍性的结构(有向图结构)。去掉了层次模型的两个限制,允许多个结点没有双亲结点,允许结点有多个双亲结点。
关系模型*
优点:
- 结合了层次和网状的优点,摒弃了他们的缺点;
- 强烈的数学支撑 —— 关系代数
面向对象模型*
redis数据库采用此数据模型
1.4 DBMS的功能和特点
功能
-
数据定义功能
– 完成对数据库和表的定义功能,DDL(Data Definition Language)
-
数据操作功能
– 提供数据操作语言 DML(Data Manipulation Language),可以对数据库中的数据进行 CRUD 等操作。
-
数据库运行控制功能
– 提供数据控制语言DCL(Data Control Language),可以对数据库中的数据进行并发控制功能、数据的安全性控制、数据的完整性控制。
-
数据组织、存储和管理功能
– DBMS分类组织、存储和管理各种数据,包括数据字典、用户字段、数据的存储路径。确定以何种文件结构和存取方式在存储级上组织这些数据,实现数据之间的联系。
-
数据库的建立 和 维护功能
- 数据库初始数据的输入
- 转换功能
- 数据库的转储
- 恢复功能
- 数据库的重组织功能和性能监视
- 分析功能
特点
- 数据结构化【数据库系统与文件系统的本质区别】
- 数据的共享性高、冗余度低,易扩展
- 数据独立性高【脱离软件和硬件,逻辑和物理独立性】
- 数据由DBMS统一管理和控制
1.5 DBS的物理组成 和 模式结构
-
DBS的生态组成,物理组成
-
DBMS
– 位于用户与操作系统之间的一层数据管理软件,主要目标是使数据成为方便各种用户使用的资源,并提高数据的安全性、完整性和可用性。
-
三级模式
-
二级映射
-
三级模式的主要特点
-
数据独立性
– 对较低层的修改不会对较高层造成影响。数据独立性分为 逻辑独立性 和 物理独立性 两类。
-
逻辑独立性【外部模式不受概念模式变化影响】
-
物理独立性【概念模式不受内部模式变化的影响】
-
1.6 常用DBMS产品介绍
- SQL Server:Microsoft
- Oracle:50%市场占比
- MySQL:开源 关系数据库
Ch2 关系模型与关系代数
2.1 关系模型的基本概念
-
关系实例
– Instance
-
关系模式
– Relation Schema
-
关系数据库
-
– 一个关系是**模式(Schema)和该模式实例(Instance)**的组合。
-
元组
– 表中的一行(即一个记录),表示一个实体。关系是由元祖组成的。
-
属性
– 表中的每一列称为属性。每个属性都有一个属性名,属性值则是各元祖属性的取值。
-
域
– 属性的取值范围。同一属性只能在相同域取值。
-
度
– 属性域的个数称为关系的 目 或 度。【对关系复杂度的度量】
-
分量
– 元祖的一个属性值。【最小单位】
-
键
– 关系中能唯一区分不同元组属性或属性值,称为关系的一个键(Key),或者称为 关键字 或 码。关键字的属性值必须唯一,且不能取空值。
-
候选键
– 凡是键都是候选键(Candidate Key)。候选键的特征包括:唯一性 和 最小性。
-
主属性 & 非主属性
– 在候选键中的属性称为 主属性(Prime Attribute),不包括在任何候选键中的属性称为 非主属性。
-
全码
– 在最极端的情况下,关系模式的所有属性都是这个关系模式的候选键,称为 全码(All Key)
-
主键
– Primary Key,关系中主键是唯一的,从候选键中选择出来的。
-
外键
– Foreign Key,表A的外键是表B的主键,也是表A与表B的联系所在。表A称为参照关系,表B称为被参照关系。
2.2 关系模型的数据结构
数据模型的三要素之一,数据结构。
-
关系
– 参照关系
关系有三种类型:基本关系(基本表)、查询表 和 视图表
基本表是实际存在的表,它是实际存储数据的逻辑表示。
查询表是查询结果对应的表。
视图表是由基本表或其它视图导出的表,是虚表,不对应实际存储的数据。
-
关系模式
– 关系模式(relation Schema)是型,关系是值
– 关系模式是一个五元组,形式化定义为: R ( U , D , D O M , F ) R(U,D,DOM,F) R(U,D,DOM,F)
- R R R:关系名;
- U U U:组成该关系的属性名集合, ( A 1 , A 2 , . . . , A n ) (A1,A2, ... ,An) (A1,A2,...,An);
- D D D:属性组U中属性所来自的域;
- D O M DOM DOM:属性向域的映像集合;
- F F F:属性间数据的依赖关系集合。
也可简化为 R ( U ) R(U) R(U) or R ( A 1 , A 2 , . . . , A n ) R(A1,A2, ... ,An) R(A1,A2,...,An)
-
关系数据库模式
– 若干关系模式的集合 R 1 , R 2 , . . . , R n {R1,R2,...,Rn} R1,R2,...,Rn 和 完整性约束的集合 I C IC IC 构成 关系数据库模式 S S S
2.3 关系模型的数据操作
数据模型三要素之二,数据操作。
-
数据查询
– 数据查询操作
可分为:选择、连接、投影、并、差、除、交、笛卡尔积等。
其它操作可由加黑的五种基本操作导出。
-
数据维护
– 数据增删改
-
数据控制
– 数据安全性 和完整性 的控制 和 并发控制 等功能
2.4 关系数据的数据约束
-
固有约束
– 数据模型中固有的约束
-
完整性约束*
– 可以在数据模型的模式中直接表述的约束
-
触发器(复杂/动态逻辑)
– 不能在数据模型的模式中直接表述的约束,必须由应用程序表示和执行
-
数据依赖
– 数据依赖,包括函数依赖和多值依赖
完整性约束:
-
实体完整性约束,base
– 要求表中的所有行都有唯一的标识符,称为主键。基本关系的所有主关键字对应的主属性都不能取空值,且取值唯一。在关系模型中,主关键字作为唯一的标识,且不能为空值。
-
参照完整性,base
– 若属性或属性值F是基本关系R的外键,它与基本关系S的主键相对应(基本关系R和S不一定是不同的关系),则对应R中每个元祖在F上的值必须为:
1 或者取空值,
2 或者等于S中某个元组的主键值。
-
用户自定义完整性
– eg:
性别 属性: 男/女
,百分制成绩 属性: 0-100
2.5 关系代数
看书后再整理。
Ch8 实体联系E-R模型
8.1 E-R模型概述
实体-联系(E-R)模型是一种语义模型,模型的语义方面主要体现在模型力图去表达数据的意义。
三个基本概念:实体、属性、联系
- 实体是客观世界中描述客观事物的概念,是一个数据对象。
- 实体是由属性来刻画的。
- 联系也可能有属性,用于描述联系的特征。
映射基数
- 一对一
- 一对多
- 多对多
8.2 E-R模型的拓展特性
– 普通E-R模型已不能满足需求
-
特殊化/概化
– 特殊化/概化的概念与一些特殊实体类型及属性继承联系在一起,这些特殊的实体类型称为超类(Superclass)和子类(Subclass)。
-
超类和子类的概念
-
属性继承
-
特殊化过程
-
概化过程
8.3 E-R模型的设计
8.4 E-R图转换为关系模型的规则
1 E-R模型概述
实体-联系(E-R)模型是一种语义模型,模型的语义方面主要体现在模型力图去表达数据的意义。
三个基本概念:实体、属性、联系
- 实体是客观世界中描述客观事物的概念,是一个数据对象。
- 实体是由属性来刻画的。
- 联系也可能有属性,用于描述联系的特征。
映射基数
- 一对一
- 一对多
- 多对多
8.2 E-R模型的拓展特性
– 普通E-R模型已不能满足需求
-
特殊化/概化
– 特殊化/概化的概念与一些特殊实体类型及属性继承联系在一起,这些特殊的实体类型称为超类(Superclass)和子类(Subclass)。
-
超类和子类的概念
-
属性继承
-
特殊化过程
-
概化过程
8.3 E-R模型的设计
8.4 E-R图转换为关系模型的规则
更多推荐
所有评论(0)