第一章 绪论
1.1 数据库体统概述
1.1.1 数据库系统4个基本概念
- 数据Data
- 描述事物的符号记录
- 含义,语义
- 数据库DB
- 长期存储在计算机内,有组织可共享的大量数据的集合
- 特点
- 永久存储
- 有组织 : 按一定数据模型,较小冗余度,较高数据独立性和易扩展性
- 可共享
- 数据库管理系统DBMS
- 位于用户和操作系统之间的一层数据管理软件
- 功能
- 数据定义
- 数据组织存储和管理
- 数据操纵:增删改查
- 数据库的事务运行管理
- 数据库的建立和维护
- 其他
- 数据库系统DBS
- 由数据库和数据库管理系统以及应用程序和管理员组成的存储,管理,处理维护数据的系统
- 由数据库和数据库管理系统以及应用程序和管理员组成的存储,管理,处理维护数据的系统
1.1.2 数据管理技术的三个发展阶段
- 人工管理阶段
- 数据不保存
- 应用程序管理数据
- 数据不共享
- 数据没独立性
- 文件系统阶段
- 数据长期保存:磁盘
- 文件系统管理数据
- 缺点:
- 共享性差,冗余度大
- 独立性差:文件数据结构修改其对应程序也需要修改
- 数据库系统阶段
- 共享性高,冗余度小
- 具有物理和逻辑独立性:程序和数据的物理(逻辑)存储互相独立,程序处理的只是逻辑结构
- 整体结构化,可用数据模型描述
- 由数据库管理系统管理数据
- 安全性保护
- 完整性保护
- 并发控制
- 数据库恢复
1.2 数据模型
- 定义
- 对现实世界数据的特征抽象
- 用来描述,组织,操作数据
- 数据模型是数据库系统的核心和基础
- 要求
- 真实模拟现实世界
- 容易被理解
- 便于计算机实现
- 根据不同的对象和目的,采用不同的数据模型
1.2.1 两类数据模型
- 概念模型
- 信息模型,按照用户观点建模,用户数据库设计
- 逻辑模型和物理模型
- 逻辑模型
- 按计算机的观点建模,用于数据库管理系统的实现
- 分类
- 层次模型
- 网状模型
- 关系模型
- 面向对象数据模型
- 对象关系数据模型
- 半结构化数据模型
- 物理模型
- 描述数据在系统内部的表示和存取方法,面向计算机系统
- 逻辑模型
1.2.2 概念模型
- 一些基本概念
- 实体entity
- 客观存在并可相互区别的事物
- 对应数据表中一条完整数据
- 属性attribute
- 实体的某一特性
- 对应数据表中的列
- 码key
- 实体的唯一属性集
- 实体型entity type
- 实体名和属性名集合抽象刻画同类实体
- 例:学生(学号,姓名,年龄,...)
- 联系relationship
- 实体内部联系
- 实体之间联系
- 一对一,一对多,多对多
- 实体entity
- 概念模型的表示方法
- 实体-联系方法(E-R图)
1.2.3 数据模型的组成要素
- 数据结构
- 层次模型
- 网状模型
- 关系模型
- 数据操作
- 增删改查
- 数据完整性约束
- 用于限定数据库状态以及变换
- 用户保证数据正确有效和相容
1.2.4 常用的数据模型
- 层次模型
- 网状模型
- 关系模型
- 面向对象数据模型
- 对象关系数据模型
- 半结构化数据模型
1.2.5 层次模型
- 树形结构表示实体之间的关系
- 层次模型只能处理一对多的实体联系
- 删除的时候其子节点都删除
- 优点
- 结构简单清晰
- 查询效率高
- 缺点
- 不适合描述多对多
- 查询必须经过父节点
- 层次命令趋于程序化
1.2.6 网状模型
- 子节点可以有一个以上的父节点且其可以没有父节点
- 优点
- 能更直接描述现实世界
- 性能良好,存取效率高
- 缺点
- 结构复杂,用户不易掌握
- 访问时需选择适当的存取路径,编写程序负担加重