ScholarGate
助手

关系数据模型

关系数据模型将所有数据表示为关系——即命名属性上的元组集合——并以集合论和一阶逻辑中的操作为基础进行数据操作,从而实现了数据逻辑视图与其物理存储之间的独立性。

用 PaperMind 寻找选题即将推出Find papers & topics
Tools & resources
下载幻灯片
Learn & explore
视频即将推出

Definition

在关系模型中,关系是元组的集合,每个元组都是从一组固定的属性到这些属性域中取值的映射;关系数据库是受完整性约束管辖的此类关系的集合。

Scope

本主题涵盖关系模型的结构部分:关系、元组、属性和域;模式和实例;候选键、主键和外键;以及实体完整性和参照完整性约束。它将关系视为具有集合语义和固定元数,并解释了数据独立性如何使应用程序摆脱存储细节。它不包括基于该模型的查询语言(在SQL和关系代数中涵盖)以及规范化的设计原则。

Core questions

  • 关系的结构组成部分是什么:属性、域、元组和元数?
  • 候选键、主键和外键如何识别和链接元组?
  • 实体完整性和参照完整性保证了什么?
  • 该模型如何实现逻辑和物理数据独立性?
  • 为什么关系被定义为集合而不是有序的元组列表?

Key concepts

  • 关系、元组、属性、域
  • 关系模式和实例
  • 候选键和主键
  • 外键
  • 实体完整性
  • 参照完整性
  • 逻辑和物理数据独立性
  • 空值

Key theories

作为元组集合的关系
关系是其属性域笛卡尔积的子集;由于它是一个集合,元组是无序且无重复的,并且该模型继承了集合操作的代数。
数据独立性
通过纯粹根据关系和约束来描述数据,该模型将逻辑模式与物理存储和访问路径分离,因此物理表示可以改变而无需重写应用程序。
完整性约束
实体完整性禁止空主键值,参照完整性要求每个外键值与现有主键匹配,确保关系之间的关联保持一致。

Clinical relevance

关系模型是商业、金融、政府和网络中使用的主要数据库系统的基础;其逻辑结构与物理存储的清晰分离是关系数据库在半个世纪以来一直是结构化事务数据默认选择的原因。

History

E. F. Codd于1970年在IBM提出了关系模型,反对当时流行的层次模型和网络模型,因为它们的查询与物理导航紧密相关。System R (IBM) 和 Ingres (Berkeley) 等原型系统在1970年代中期证明了其实用性,Codd后来因此项工作获得了图灵奖。

Key figures

  • Edgar F. Codd
  • Jeffrey D. Ullman

Related topics

Seminal works

  • codd1970
  • silberschatz2019

Frequently asked questions

为什么关系被定义为集合,没有重复的元组?
将关系定义为集合为模型提供了清晰的数学基础,这意味着元组的身份完全由其属性值和键约束决定。实际上,SQL放宽了这一点,允许使用多重集(包)语义,除非键或DISTINCT强制唯一性,否则允许重复行。
参照完整性实际上防止了什么?
它防止了悬空引用:一个关系中的外键必须为空或匹配被引用关系中现有的主键值,因此您不能,例如,为不存在的客户记录订单。

Methods for this concept

Related concepts