关系数据库是一种数据库类型,它存储并提供对彼此相关的分类数据点的访问。
它是基于关系模型, 由Edgar F. Codd在1969年首次描述,这是一种将数据表示为表格的方式,也称为关系,这些表格的行被指定为记录,列被指定为属性。
一个记录通常代表一个实体类型的实例,如客户或产品,而一个属性将持有该实例的一个值,例如一个名字、一个电子邮件地址、一个电话号码或一个数量。
除了持有一个值之外,属性在某些情况下也被称为键,它能够在不同的表之间建立关系。
顺便提一下,这些关系型数据库中的大多数通常被称为SQL数据库,因为它们实现了结构化查询语言的变体,在处理结构化数据时证明特别有用。
关系模型的好处
简单性
由于关系模型的简单性,关系数据库可以很容易地在不同的环境中实施和维护,以满足任何企业的规模和需求,从简单的电子表格到更先进的数据库管理系统,如MySQL或Postgres。
精确性
由于数据点可以使用主键和外键的概念相互参考,因此不需要重复,这反过来又提高了数据的准确性和统一性。
灵活性
关系模型的灵活性也允许一个可弯曲的数据库结构,可以轻松地适应不断变化的需求。
事实上,由于关系型数据库可以容纳的行、列或表的数量没有界限,它的内部结构可以毫不费力地通过插入、更新或删除表、列或单个数据来改变,而不影响其他现有的部分。
可用性
最后,由于关系模型并不像树形或分层模型那样遵循模式,它允许使用连接查询和条件语句有选择地组合来自多个表的特定列的数据,因此只有适当的和相关的数据被获取、汇总和显示。
一个关系型的例子
现在让我们考虑一个电子商务网站的数据库,包含以下两个表。
第一个表名为customers,包含客户的信息。
第二个表名为订单,包含客户在网站上的订单。
如果你注意,你会发现这两个表有一个共同点:id属性,在这里被称为键。
因为这个属性,关系数据库可以在这两个表之间建立一种关系,这种关系由订单表的customer_id列实现,它确实是对客户表id列的一种引用。
在这种情况下,客户表的id列被称为主键,而订单表的customer_id列(指向它)被称为外键。
因此,当后台向数据库发送处理订单的请求时,数据库可以同时获取订单和相关客户的信息,使仓库能够提取正确的产品并将其运送到正确的地址。
下一步是什么?
如果你喜欢阅读我的作品,别忘了👏🏻,最高可达50倍
在Skillshare上获取我的全部免费课程 "Linux命令行初学者":https://skl.sh/37jT4dK
关系型数据模型概述(RDBMS第一部分)最初发表于Dev Geniuson Medium,在那里人们通过强调和回应这个故事继续对话。