关系数据库

数据库类型

关系数据库(英语:Relational database),是建立在关系模型基础上的数据库,借助于集合代数数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由埃德加·科德于1970年首先提出的,并配合“科德十二定律”。现如今虽然对此模型有一些批评意见,但它还是数据存储的传统标准。标准数据查询语言SQL就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。

关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。

实体关系模型

实体关系模型(Entity-Relationship Model),简称E-R Model,是陈品山(Peter P.S Chen)博士于1976年提出的一套资料库的设计工具,他运用真实世界中事物与关系的观念,来解释资料库中的抽象的资料架构。实体关系模型利用图形的方式(实体-关系图(Entity-Relationship Diagram))来表示资料库的概念设计,有助于设计过程中的构思及沟通讨论。

关系操作

 
关系操作

关系模块中常用的操作包括:

  • 数据查询
    • 选择
    • 投影
    • 连接
  • 数据操作
    • 新增
    • 删除
    • 修改
    • 查询

完整性约束

完整性约束包括:

  • 实体完整性
  • 参照完整性
  • 用户定义完整性

关系数据语言SQL

SQL(Structured Query Language)语言是1974年由Boyce和Chamberlin提出的一种介于关系代数关系演算之间的结构化查询语言,是一个通用的、功能极强的关系性数据库语言。

模式结构 (Schema)

  • 外模式

外模式用来描述用户看到的或使用的部分的数据的逻辑结构,用户根据外模式用户数据操作语句或者程序操作数据库中的数据。

  • 模式

又称逻辑模式,是数据库中全部数据的逻辑结构和特征的描述。

  • 内模式

内模式对应于物理机器的数据库,是三层模式中最底层的表示,描述数据在存储介质上的存储方式和物理结构。

表(关联Relation)

 
列(属性Attribute)和行(值组Tuple)的形式

表(关联Relation)是以行(值组Tuple)和列(属性Attribute)的形式组织起来的数据的集合。一个数据库包括一个或多个表(关联Relation)。例如,可能有一个有关作者信息的名为authors的表(关联Relation)。每列(属性Attribute)都包含特定类型的信息,如作者的姓氏。每行(值组Tuple)都包含有关特定作者的所有信息:姓、名、住址等等。在关系型数据库当中一个表(关联Relation)就是一个关系,一个关系数据库可以包含多个表(关联Relation)

视图

索引

全关系系统十二准则

参见