1.数据库基本概念
1.1 数据 Data
- 是数据库中存储的基本对象
- 是描述事物的符号记录
可以是数字、文字、图形、图像、声音等
(1)数据有多种形式(2)数据有语义(3)数据有结构
1.2 数据库 DB
- 是存放数据的仓库
- 是长期存储在计算机内有组织的大量的共享的数据集合
- 可供各种用户共享
- 具有最小冗余度和较高数据独立性
- 数据库的其它定义
- 是存储在计算机系统中的数据
- 是一个计算机化的记录存储的系统
- DB 是相关文件的集合以及一组允许用户存取、修改这些文件的程序
- 是供某个特定机构的应用系统使用的可操作数据的集合
1.3 数据库管理系统 DBMS
- 是指数据库系统中管理数据的软件系统
- 是数据库系统的核心组成部分。
- 对数据库的一切操作(定义、查询、更新及各种控
制),都是通过DBMS进行的
1.4 数据库系统 DBS
采用了数据库技术的计算机系统,包括DB、DBMS、开发工具、 应用系统、硬件、软件、用户和数据库管理员(DBA)
1.5 数据处理与数据管理
- 数据处理:是对各种形式的数据进行收集、储存、加工和传播的一系列活动的总和。
- 数据管理:是指数据的分类、组织、编码、存储、维护、检索等操作,是数据处理的核心。
数据库技术是数据管理的高级技术。
总结:数据库、数据库管理系统、数据库系统这几个概念间的层次关系
2. 数据库系统特点
2.1 数据库系统的特点
- 数据库是存放数据的仓库,
- 是长期存储在计算机内有组织的大量的共享的数据集合
- 具有最小冗余度和较高数据独立性。
- 数据库系统实现了整体数据的结构化,具有共享性高、独立性高等特点。
(1) 数据整体结构化
(2)数据共享性高,冗余度低,易扩充
(3)数据独立性高
(4)数据由DBMS统一管理和控制
应用程序和数据之间的对应关系
2.2 数据库技术发展的高级阶段
3.数据模型
3.1 数据模型的定义
3.1.1模型
是现实世界中对象特征的模拟和抽象。
3.1.2 数据模型
也是一种模型,是对现实世界数据特征的抽象
3.1.3 数据模型应满足三个要求:
真实地模拟现实世界;容易理解 ;便于计算机上实现
3.2 数据模型的种类
3.2.1概念模型
从用户角度在信息世界对数据建模,独立于计算机系统的模型,用于信息世界建模
3.2.2逻辑模型
从系统角度在机器世界对数据建模,逻辑模型用于机器世界建模
3.3 数据模型的组成
数据结构;数据操作;数据完整性约束
4.数据描述
4.1 数据描述的术语
4.1.1信息世界的术语
实体: 可以相互区别的客观事物和概念的抽象。
★ 实体集: 性质相同的同类实体的集合。
★ 实体标识符: 能唯一标识每个实体的属性或属性集。
★ 属性: 对实体某一特征的描述。
★ 域: 属性的取值范围。
★联系: 实体内部的联系和实体之间的联系。
实体内部的联系指的是实体各属性之间的联系。
实体之间的联系指的是不同实体集之间的联系。
4.1.2 机器世界的术语
★ 字段:标记实体属性的命名单位,也称为
数据项(属性)。
★ 记录:字段的有序集合(实体)。
★ 文件:同一类记录或不同类记录集合(实体集)。
★ 关键码(key): 能唯一标识文件中每条记录的字段或字段集(实体标识符)。
4.2 实体之间的联系
(1)1:1 (一对一联系)
(2)1:N (一对多联系)
(3)M:N (多对多联系)
5.概念模型
5.1概念模型的定义
- 为正确直观地反映客观事物及其联系,按用户观点对数据和信息建模型
- 是现实世界到机器世界的一个中间层次
5.2概念模型的特点
(1)用于建立信息世界的数据模型,是现实世界的第一层抽象
(2)是独立于计算机系统的模型;
(3)强调语义表达功能,概念简单、清晰,易于用户理解,是用户和DB设计人员之间交流的语言,是DB设计人员进行数据库设计的工具。
5.3实体联系模型
5.3.1是常用的概念模型,简称 E-R模型
5.3.2模型三要素:实体、属性、联系
5.3.3 E-R图:
- 用矩形表示实体
- 用椭圆表示属性
- 用菱形表示实体间的联系
- 属性和实体间用无向边连接
- 实体和联系间用无向边连接(同时在边上标上联系的类型)
5.3.4 两个实体集之间的三类联系
5.3.5 三(一)个实体集之间的联系
6.层次模型
用树形结构组织数据
层次数据模型适合表示记录间的一对多联系
7.网状模型
网状模型是比层次模型更具有普遍性的逻辑模型
用图形结构表示实体及实体间的联系
特点
优点:易于实现M:N联系,存取效率高
缺点:结构复杂
8.关系模型
是最重要的一种逻辑模型
8.1关系模型的数据结构
8.1.1关系数据模型包括三个部分:
- 数据结构(规范的二维表);
- 数据操纵(数据查询、数据插入、数据删除和数据修改);
- 数据完整性约束条件(实体完整性、参照完整性、用户定义的完整性三大类)
8.1.2 用二维表来表示实体集,用外键表示实体间的联系
● 关系:一个关系对应通常说的一张表。
● 元组:表中的一行即为一个元组。
● 属性:表中的一列即为一个属性。
● 主码:表中某个属性组,可以唯一确定一个元组。
● 域 : 属性的取值范围。
● 关系模式:二维表的表头那一行。
8.2关系模型的特点
优点:
建立在严格的数学概念基础上;结构简单;数据独立性高、安全保密性高
缺点:查询效率低
9.数据库系统三级模式
9.1数据库系统的三级模式结构
9.2模式
- 介于用户级和物理级之间,
- 是所有用户的公共数据视图(全局的数据视图)
- 是数据库管理员看到和使用的数据库。
- 一个数据库只有一个模式
9.3外模式
- 又称用户视图
- 最接近于用户的一级数据库,是用户看到和使用的局部数据的逻辑结构和特征的描述
- 外模式是模式的子集。 一个数据库可以有多个外模式。
9.4内模式
- 又称为存储模式
- 是数据物理结构和存储方式的描述。
- 一个数据库只有一个内模式。
9.5三级模式结构示例
10.数据库系统两级映像
10.1 数据库系统的三级模式
是数据的三个抽象级别,DBMS在三级模式之间采用两级映像进行转化
模式、外模式虽与数据存储无关但都可以使用,靠DBMS提供的两级映像功能实现。
10.2外模式/模式映像
- 用于定义外模式和模式间的对应关系。
- 一个模式可以有多个外模式,每一个外模式,数据库系统都有一个外模式/模式映像。
- 外模式/模式映像通常包含在各自外模式的描述中。
10.3模式/内模式映像
- 通常包含在模式描述中
- 用于定义模式和内模式间的对应性。
- 定义了数据库全局逻辑结构与存储结构之间的对应关系。
- 数据库只有一个模式,也只有一个内模式,所以模式/内模式映像是唯一的。
10.4两级映像图示
11.数据的独立
11.1数据库系统的两级映像
- 数据库系统具有三级模式结构,即模式、外模式和内模式。
- 在外模式和模式之间存在外模式/模式映像
在模式和内模式之间存在模式/内模式映像。
- 三个抽象级间通过两级映像进行相互转换,使得数据库的三级模式形成一个统一整体,保证了数据的独立性。
- 数据独立性是指应用程序与数据间相互独立,不受影响。
分为逻辑独立性和物理独立性两级。
11.2数据逻辑独立性
对模式的修改尽量不影响外模式,从而应用程序不必修改,保证数据与程序的逻辑独立性
11.3数据物理独立性
对内模式(存储结构)的修改尽量不影响模式,对于外模式和应用程序的影响更小,应用程序不必修改,保证数据与程序的物理独立性