数据库系统原理(一)
数据库系统概述
1. 数据库基本概念
- 什么是数据?
- 数据(Data) 是描述事物的符号记录,是指利用物理符号记录下的、可以鉴别的信息
- 数据是信息存在的一种形式,只有通过解释或处理的数据才能成为有用的信息
- 数据要按照一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性,系统易于扩展,并可以被多个用户分享
什么是数据库?
数据库(Database,DB)是指长期存储在计算机中的有组织、可共享的数据集合
- 数据库的三个基本特点:
- 永久存储
- 可共享
- 有组织
什么是数据库管理系统?
数据库管理系统是专门建立和管理数据库的一套软件,介于应用程序和操作系统之间
- 数据库管理系统的功能:
- 数据定义功能
- 数据操作功能
- 数据库的运行管理功能
- 数据库的建立和维护功能
- 数据组织、存储、管理功能
- 其他功能
数据库管理系统的构成
2. 数据库管理技术的发展
数据库管理技术发展的三个阶段
人工管理阶段
- 数据不保存
- 应用程序管理数据
- 数据面向应用程序
文件系统阶段
数据库系统阶段
- 数据集成(主要目的)
- 数据独立性高
- 数据共享性高
- 数据冗余低
- 数据一致性
- 实施统一管理与控制
- 减少应用程序开发与维护的工作量
什么是数据独立?
数据定义与使用数据的应用程序分离称为数据独立
什么是物理独立性
将数据的逻辑结构和物理结构相分离,当物理结构发生改变时,不会导致应用程序的修改,这称为数据的物理独立性
数据保护
- 数据的安全性、完整性、并发控制、故障恢复等就是数据库保护
3. 数据库系统的结构
- 数据库系统的结构分类
- 三级模式架构图
三级模式
名称 别称 视图类型 外模式 子模式、用户模式 数据视图、用户视图 模式 逻辑模式、概念模式 概念视图 内模式 存储模式 内部视图、存储视图 模式是数据库的核心,也是数据库设计的关键
- 三级模式的两层映像
- 外模式/模式映像
- 保证数据和程序的逻辑独立性
- 模式/内模式映像
- 保证数据数据和程序的物理独立性
- 外模式/模式映像
客户/服务器结构
- 表示层 <————> 数据层
浏览器/服务器结构
- 表示层 <————> 处理层 <————> 数据层
4. 数据模型
- 什么是数据模型?
- 数据模型是对现实世界数据特征的抽象,描述的是 数据的共性内容
- 数据的特征:
- 静态特征
- 数据的基本结构
- 数据间的联系
- 数据取值范围的约束
- 动态特征
- 指对数据可以进行符合一定规则的操作
- 静态特征
- 数据模型组成的要素
- 数据结构
- 描述的是系统的静态特征,即数据对象的数据类型、内容、属 性以及数据对象之间的联系
- 数据操作
- 是动态特征
- 数据约束
- 描述数据结构中数据间的语法和语义关联
- 数据结构
- E-R模型的表示方法
- 实体型,用矩形表示,矩形框内写明实体的名称;
- 属性,用椭圆形表示,并用无向边将其与相应的实体连接起来;
- 联系,用菱形表示,菱形框内写明联系的名称,并用无向边分别与有关实
体连接起来
逻辑模型的类型
层次模型 最早使用的一种数据模型; 有且仅有一个结点没有父结点,称作根结点; 其他结点有且仅有一个父结点 网状模型 以网状结构表示实体与实体间的联系; 允许结点有多于一个父结点; 可以有一个以上的结点没有父结点 关系模型 用二维表结构来表示实体间的联系 优点:建立在严格的数学概念的基础上;概念单一;存取路径对用 户透明,有更高的数据独立性,更好的安全保密性 面向对象模型 既是概念模型又是逻辑模型; 表达能力丰富,对象可复用、维护方便 数据模型的类型
概念模型 数据抽象级别的最高层; 主要用于数据库的设计阶段 逻辑模型 数据抽象级别的中间层; 任何DBMS都是基于某种逻辑数据模型。 物理模型 描述数据在存储介质上的组织结构,是逻辑模型的物理实现; 是数据库最底层的抽象; 设计目标是提高数据库性能和有效利用存储空间。