关系数据库与 SQL 入门指南
1. 关系数据库基础
1.1 关系数据库优势
传统数据库若添加新属性,即便应用程序不使用该属性,也需对其进行修改。而关系数据库独立于应用程序,修改其结构不会影响应用程序。此外,关系数据库基于关系(即表)构建,能够定义复杂的关系,每个关系可视为一个独立实体,不受层次或主/成员模型的繁琐限制。
1.2 关系模型
关系模型由 E. F. Codd 博士于 1970 年提出,它基于集合论和谓词逻辑的数学原理,能保护数据,支持轻松的数据检索,确保数据的准确性和一致性,并提供独立于访问存储数据的应用程序的数据库结构。
关系模型的核心是关系,关系是由列和行组成的类似表格的结构,代表由相关数据构成的单个实体。每个关系包含一个或多个属性(列),属性将相似类型的数据分组。每个属性都有一个关联的域,域定义了可存储在特定属性中的数据类型,与数据类型不同,域的含义更广泛。
数据以元组(行)的形式存储在关系中,元组是一组数据,其值构成了为该关系定义的每个属性的一个实例,每个元组代表一条相关数据记录。
需要注意的是,关系模型中使用的术语“关系”“属性”和“元组”,在 SQL 中对应的术语是“表”“列”和“行”,虽然含义略有不同,但底层原理相同。
1.3 数据规范化
数据规范化是关系模型的核心概念,它是将数据库组织成一种结构的过程,旨在保留存储数据的完整性并最小化冗余数据。规范化的数据库符合关系模型的规则,这些规则称为范式,为数据的组织提供了具体指导,以防止在使用数据库时出现数据不一致和丢失的问题。