
「MySQL学习笔记01」数据库系统概念
¶1.1 数据库系统概述
¶1.1.1 数据库
数据库(DataBase, DB),按一定格式存放数据的仓库,而这个仓库是在计算机存储设备上的。
严格定义:数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度(redundancy)、较高的数据独立性(data independency)和易拓展性(scalability),并可为各种用户共享。
数据独立性,包括数据的 物理独立性 和 逻辑独立性。
- 物理独立性:用户的应用程序 与 数据库中数据的物理存储 是相互独立的
- 逻辑独立性:用户的应用程序 与 数据库的逻辑结构 是相互独立的
特点:①永久存储;②有组织;③可共享
数据库的共享是 并发的(concurrency)共享,即多个用户可同时存取数据库中的数据。
¶1.1.2 数据库管理系统
如何高效地获取和维护数据?通过这个系统软件——数据库管理系统(DataBase Management System, DBMS)
数据库管理系统 在数据库建立、运用和维护时 对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对数据库进行恢复。
数据库管理系统和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。
主要功能:
- 数据定义功能:系统提供数据定义语言(DDL)
- 数据组织、存储和管理
- 数据操纵功能:系统提供数据操纵语言(DML)
- 数据库的事务管理和运行管理
- 数据库的建立和维护功能
- 其他功能

¶1.1.3 数据库系统
数据库系统(DataBase System, DBS),是由 数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DataBase Administrator, DBA)组成的存储、管理、处理和维护数据的系统。

一般情况下,常将数据库系统简称为数据库。
¶1.2 数据模型
现有数据库系统均是基于某种数据模型的。数据模型是数据库系统的核心和基础。
¶1.2.1 数据模型的组成要素
数据模型,通常由数据结构、数据操作和数据的完整性约束条件三部分组成。
- 数据结构:描述数据库的组成对象以及对象之间的联系。它是所描述的对象类型的集合,是对系统静态特性的描述。
- 数据操作:对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。它是对系统动态特性的描述。
- 数据的完整性约束条件
¶1.2.2 两类数据模型
根据模型应用的不同目的,可划分两大类的模型:
第一类是概念模型,也称信息模型,按用户的观点来对数据和信息建模,主要用于数据库设计。
概念模型的表示方法中,最常用是实体—联系方法,该方法用E-R图来描述现实世界的概念模型。画E-R图,最常用的方法是 统一建模语言(UML)。
第二类是逻辑模型和物理模型。
其中,逻辑模型,按计算机系统的观点对数据建模,主要用于数据库管理系统的实现。该模型主要包括:
- 层次模型
- 网状模型
- 关系模型
- 面向对象数据模型
- 对象关系数据模型
- 半结构化数据模型
¶1.2.3 关系模型
关系模型是最重要的一种数据模型。
从用户观点来看,关系模型由一组关系组成,每个关系的数据结构是一张规范化的二维表。
关系和现实生活中的表格所使用的术语做一个粗略的对比:
| 关系术语 | 一般表格的术语 |
|---|---|
| 关系名 | 表名 |
| 关系模式 | 表头(表格的描述) |
| 关系 | (一张)二维表 |
| 元组 | 记录或行 |
| 属性 | 列 |
| 属性名 | 列名 |
| 属性值 | 列值 |
| 分量 | 一条记录中的一个列值 |
| 非规范关系 | 大表中嵌有小表 |