数据库基础笔记 一.绪论
1.1 引言
数据管理的最新技术, 计算机科学的重要分支
1.1.1 相关概念
数据 Data: 信息的符号记录
数据库 Database: 长期存储中计算机内, 有组织的, 可共享的相关数据的集合
数据库管理系统 DBMS: 位于用户和操作系统之间的一层数据管理软件
数据库系统 DBS: 计算机硬件为基础的记录保持系统, 包括数据库, DBMS, 应用系统, 管理员和用户, 有时还包括计算机硬件
1.1.2 数据管理技术的发展
数据管理是指对数据进行分类, 组织, 编码, 存储, 检索和维护
分为三个阶段
- 人工管理阶段
- 文件系统阶段
- 数据库系统阶段
1.1.3 数据库技术的研究领域
DBMS 软件的研制, 数据库设计, 数据库理论
1.1.4 数据库系统的特点
- 数据的结构化
- 数据的共享性好, 冗余性低
- 数据的独立性高: 物理, 逻辑
- 数据由 DBMS 统一管理: 安全性, 完整性, 并发控制, 数据库恢复
- 良好的用户接口
1.1.5 数据库在信息科学中的应用
| 现实世界 | 信息世界 | 计算机世界 |
|---|---|---|
| 实体 Entity 实体集 |
实体记录 Record 记录集 |
数据 Data 数据集 |
| 特征 特征值 特征取值范围 |
属性 Attribute 属性值 属性值域 |
数据项 (属性) 数据项值 数据项值域 |
意义不明的表格.
1.2 数据模型
数据的组织是数据库技术的核心问题, 数据库的数据组织是通过数据模型实现的.
数据模型: 表示实体类型和实体间联系的模型.
要求:
- 比较接近真实世界
- 容易为人所理解
- 便于计算机实现
数据模型的两个层次:
概念 (数据) 模型: 也称信息模型, 实体联系模型 (ER), 用于描述信息结构, 只描述抽象的实体和实体间的联系
(结构) 数据模型: 也称基本数据模型, 面向数据库的逻辑结构, 直接涉及到计算机系统和 DBMS, 按照计算机系统的观点对数据建模
1.2.1 概念模型
实体联系模型 Entity Relationship Model, ER 模型
矩形框: 实体型
菱形框: 联系
椭圆框: 实体型和联系的属性
直线: 连接实体类型和联系类型, 表示联系的种类
1.2.2 结构模型的要素
数据结构: 描述系统的静态特征, 是对实体类型和实体间联系的表达和实现, 命名依据
数据操作: 描述系统的动态特征, 对数据库的检索和更新
数据的约束条件: 一组完整性规则的集合, 给出数据及其联系所具有的制约和依赖原则
1.2.3 结构数据模型
主要分为层次模型, 网状模型, 关系模型, 未来可能出现对象模型, 语义模型
非关系模型中数据结构的单位是基本层次联系, 即两个记录以及它们之间的一对多/一对一关系
1.2.3.1 层次模型
省流: 树
典型代表: IMS
定义: 用树形 (层次) 结构表示实体类型及实体间联系的数据模型
特点:
- 有且仅有一个结点无双亲, 即根结点
- 其他结点有且仅有一个双亲
- 层次模型中每个结点 (片断) 表示一个记录类型, 每个记录类型包含若干字段, 字段有字段名, 数据类型和长度等
数据操纵与完整性约束:
- 插入时, 没有双亲结点不能插入子女结点
- 删除时, 删除双亲结点要删除子女结点
- 更新时, 更新所有相应的记录
存储结构: 邻接法, 链接法
优点:
- 模型本身简单
- 实体间联系固定, 预先设计好的应用系统性能优于关系型, 不低于网状模型
- 提供了良好的完整性支持
缺点:
- 实现多对多关系时, 需要采用冗余或虚节点方式, 易形成不一致性
- 对插入和删除限制较多
- 查询子节点需要通过双亲节点
- 结构严谨, 层次命令趋于程序化
1.2.3.2 网状模型
省流: 有向图
典型代表: DBTG 开发系统, IMAGE/3000, IDS/II, DMS1100
定义: 用有向图 (网络) 结构表示实体及其联系的数据模型
数据结构特征:
- 允许一个以上的结点无双亲
- 至少一个结点不止一个双亲
数据操纵与完整性约束:
- 插入时, 允许插入未确定双亲结点的子女结点值
- 删除时, 允许只删除双亲结点值
- 更新时只需更新指定记录
存储结构: 最常用链接法, 也有引元阵列法, 二进制阵列法, 索引法等
优点:
- 描述现实世界更直接
- 存取效率高, 性能好
缺点:
- 结构复杂, 不利于用户掌握
- 数据独立性差