《数据库设计与实践》第0章 - 课程引言与数据库基础
课程概述
本课程为数据库设计与实践,是软件工程和计算机科学的核心课程之一。课程以数据库设计为主线,兼顾理论与实践,涵盖从需求分析到物理实现的完整数据库设计流程。
数据库基本概念
什么是数据库
- 数据库(Database, DB)是长期存储在计算机内、有组织、可共享的数据集合
- 数据按一定的数据模型组织、描述和存储
- 具有较小的冗余度、较高的数据独立性和易扩展性
- 可为各种用户共享
数据库管理系统
- 数据库管理系统(DBMS)是位于用户与操作系统之间的一层数据管理软件
- 主要功能:
- 数据定义功能(DDL)
- 数据操纵功能(DML)
- 数据库的运行管理
- 数据库的建立和维护功能
数据库系统
- 数据库系统(DBS)= 数据库 + DBMS + 应用系统 + 数据库管理员(DBA)
- 特点:
- 数据结构化
- 数据的共享性高,冗余度低,易扩充
- 数据独立性高(物理独立性、逻辑独立性)
- 数据由 DBMS 统一管理和控制
数据模型
概念模型(信息模型)
- 按用户的观点对数据和信息建模
- 用于数据库设计
- 表示方法:E-R 模型(实体-联系模型)
- 实体(Entity):客观存在并可相互区别的事物
- 属性(Attribute):实体所具有的某一特性
- 码(Key):唯一标识实体的属性集
- 域(Domain):属性的取值范围
- 联系(Relationship):实体内部和实体之间的联系
逻辑模型和物理模型
- 逻辑模型:按计算机系统的观点对数据建模,包括层次模型、网状模型、关系模型、面向对象模型等
- 物理模型:数据在系统内部的表示方式和存取方法
关系模型
关系模型是当前主流的数据模型:
- 用二维表表示实体及实体间的联系
- 行 = 元组(Tuple),列 = 属性(Attribute)
- 码(Key):唯一确定一个元组的属性或属性组
- 关系模式:关系名(属性1,属性2,…,属性n)
关系模型的优点:
- 建立在严格的数学概念基础上
- 概念单一,实体和联系都用关系表示
- 数据独立性强
- 存取路径对用户透明
数据库系统的结构
模式的概念
- 模式(Schema):数据库全体数据的逻辑结构和特征的描述
- 实例(Instance):模式的一个具体值
- 模式相对稳定,实例随数据更新而变动
三级模式
- 模式(逻辑模式):数据库中全体数据的逻辑结构和特征的描述
- 外模式(用户模式):数据库用户能够看见和使用的局部数据的逻辑结构和特征
- 内模式(存储模式):数据物理结构和存储方式的描述
两级映像
- 外模式/模式映像:保证数据的逻辑独立性
- 模式/内模式映像:保证数据的物理独立性
数据库设计概述
设计步骤
- 需求分析:数据需求、处理需求
- 概念结构设计:E-R 图
- 逻辑结构设计:E-R 图转关系模型
- 物理结构设计:存储结构和存取方法
- 数据库实施:建表、录入数据、调试
- 数据库运行和维护
数据库设计的特点
- 数据库建设是硬件、软件和干件(技术与管理的界面)的结合
- 结构设计和行为设计相结合
学习收获
- 数据库是软件系统的核心,几乎所有信息系统都依赖数据库
- 三级模式两级映像结构是理解数据独立性的关键
- 关系模型是当前主流,但了解不同模型有助于选择合适方案
- 数据库设计是一个迭代过程,需求分析阶段的质量直接决定最终系统的成败