CODD 关系数据库十二规则

rdbmsmcadatabase更新于 2026/2/7 2:22:17

Edgar F Codd 是一位计算机科学家,他发明了用于数据库管理的关系模型。他还因奠定了关系数据库和关系数据库管理系统的基础而备受赞誉。

Codd 的十二规则定义了数据库管理系统(即关系数据库管理系统)所需的特征。

规则 0:基础规则

任何系统要想成为关系数据库管理系统,都应使用其关系功能来管理数据。

规则 1:信息规则

所有信息(包括元数据)都以行和列的形式呈现在表格中。行和列必须严格无序。

规则 2:保证访问规则

数据库中的所有值都应能够通过表名、主键和列名的组合进行访问。(根据此规则,直接使用指针访问数据是无效的)。

规则 3:系统地处理 Null 值

数据库完全支持使用 NULL 值,以系统的方式表示数据缺失或无效。NULL 值与数据类型无关,对其执行任何操作都必须返回 NULL。

规则 4:动态在线目录

目录是对数据库的完整描述。它在线存储,并提供有关数据库的附加信息。数据库使用的查询语言也用于目录。

规则 5:功能强大且结构良好的语言

关系数据库可能支持多种语言。但是,至少应该有一种语言能够提供所有类型的数据访问、数据操作等。SQL 就是这样一种语言。

规则 6:视图更新规则

所有理论上可更新的视图也应该可以由系统更新。

规则 7:高质量的插入、更新和删除操作

应该能够通过单个操作数进行插入、删除和更新。此功能必须在所有关系级别上可用。

规则 8:物理数据独立性

系统的物理更改,例如存储空间的更改、访问方法的更改等,不应影响应用程序和系统的其他活动。

规则 9:逻辑数据独立性

即使逻辑结构发生变化,关系数据库的用户视图也应保持一致。这条规则很难满足。

规则 10:完整性独立性

特定于关系数据库的完整性约束应使用该数据库的语言定义并存储在目录中。这条规则意味着关系型数据库管理系统不依赖于前端。

规则 11:分布独立性

即使数据库中的数据分布在多个位置,最终用户也应该将数据库视为一个统一的实体。此外,即使数据库分布在网络上,也应该能够完美运行。

规则 12:不可颠覆规则

如果关系型数据库允许低级别访问,则它不应该能够破坏完整性约束并绕过安全措施来更改数据。


相关文章