运维常识:什么是关系数据库?

运维常识:什么是关系数据库?关系数据库是最流行和最常用的数字数据库 在本文中 我们将讨论关系数据库 它的工作原理 示例 关系数据库和非关系数据库之间的差异等等 什么是关系数据库 一个关系数据库是基于组织彼此相关的数据点的模型数据的集合 该术语最初由 IBM 研究实验室的英国计算机科学家 EdgarFrank Ted Codd 于 1970 年引入 关系数据库将有价值的信息或数据组织成表格 这些表格可以根据彼此共有的数据链接到其他几个表格 它使用户能够使用单个查询从一个或多个相关表中的数据构建新数据集 关系数据库使用的数据结构

关系数据库是最流行和最常用的数字数据库,在本文中,我们将讨论关系数据库、它的工作原理、示例、关系数据库和非关系数据库之间的差异等等。

什么是关系数据库?

一个关系数据库是基于组织彼此相关的数据点的模型数据的集合,该术语最初由IBM 研究实验室的英国计算机科学家Edgar Frank “Ted” Codd 于 1970 年引入。

关系数据库将有价值的信息或数据组织成表格,这些表格可以根据彼此共有的数据链接到其他几个表格,它使用户能够使用单个查询从一个或多个相关表中的数据构建新数据集。

关系数据库使用的数据结构包括表、索引和视图,关系数据库的主要组件是表、列和行。

关系数据库管理系统 (RDBMS) 用于维护关系数据库,此外,许多 RDBMS 支持用于查询和管理的结构化查询语言 (SQL)。

关系数据库如何工作?

关系数据库的工作原理是通过“”链接来自多个相关表的信息或数据,键是可以分配给表中包含的一行唯一数据的唯一标识符。此唯一标识符称为“主键”,可能包括 ID、序列号、用户名等。

当记录与主表中的主记录有关系时,主键可以包含在另一个表的记录中,如果将主键添加到另一个表中的记录,则称为“外键”。主键和外键之间的连接创建了多个表中数据集之间的关系。

关系数据库示例

最流行的标准关系数据库包括:

  • 甲骨文
  • MySQL
  • PostgreSQL
  • 微软 SQL 服务器
  • IBM Db2

最常用的基于云的关系数据库包括:

  • 甲骨文云
  • AWS 关系数据库服务
  • 谷歌云 SQL
  • IBM Db2 on Cloud
  • SQL Azure

关系与非关系数据库:有什么区别?

关系数据库是为符合预定义数据模型的结构化数据而开发的,相反,非关系型数据库用于非结构化数据,例如,可以使用关系数据库进行销售跟踪、计费或资产管理。

非关系数据库往往有更具体的用例。非关系数据库用例的一个示例是使用需要高度优化的搜索索引的大数据。

关系和非关系数据库之间的差异如下:

运维常识:什么是关系数据库?

关系数据库模型

关系数据库模型将数据库表示为关系和关系集的集合,关系是相关数据值的表,其中每一行代表数据值的集合并表示关系或现实世界的实体,该表及其列用于解释每一行中的值。

在关系数据库模型中,信息或数据存储为表。

请注意,相关数据的物理存储与其逻辑组织方式无关。

实体之间的关系类型

两个实体之间的关联称为关系。在关系数据库设计中,两个实体之间存在三种类型的关系:

  • 一对一关系
  • 一对多或多对一关系
  • 多对多关系

一对一关系中,表 X 中的每条记录都与表 Y 中的一个且仅一个记录相关,而表 Y 中的每个记录与表 X 中的一个且仅一个记录相关,例如,员工与其公司笔记本电脑之间的关系。

一对多多对一关系中,表X中的每条记录都与表Y中的多条记录相关,而表Y中的每条记录又与表X中的多条记录相关,例如,一个公司之间的关系及其员工笔记本电脑的库存。

多对多关系中,表 X 中的许多记录与表 Y 中的许多记录相关,而表 Y 中的许多记录与表 X 中的许多记录相关,例如,公司笔记本电脑与其安装的应用程序之间的关系。

关系数据库让用户和企业更好地了解可用信息和数据之间的关系,多年来,关系数据库已经成功地管理了大量数据,并且变得更好、更快、更强且更易于使用——这就是为什么它们仍然是最受欢迎的数据库类型。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233399.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • matlab检验贝塔分布规律,贝塔分布背后的直觉:概率的概率分布

    matlab检验贝塔分布规律,贝塔分布背后的直觉:概率的概率分布编者按 贝塔分布的定义很简单 具有两个参数 gt 0 的一组定义在 0 1 区间的连续概率分布 但是 它背后的直觉却不是那么明显 StackOverflo 数据科学家 DavidRobinso 在 CrossValidat 解释了贝塔分布背后的直觉 简而言之 贝塔分布代表 probabilitie 概率的复数形式 的分布 也就是说 它代表当我们不知道概率是什么时 概率的所有

    2025年8月29日
    4
  • 虚拟机安装完linux后怎么使用linux_虚拟机ubuntu安装教程

    虚拟机安装完linux后怎么使用linux_虚拟机ubuntu安装教程本篇文章为本人从零开始学习linux的学习心得,其中包含了部署虚拟环境安装linux系统。其中若有错误之处,请读者积极指出,让本人与读者共同进步。第一章部署虚拟环境安装linux系统及配置网路一、linux简介首先在学习linux系统之前,我觉得应该先了解一下linux的来历和发展历程,会让我们对linux充满好奇心,对后续的学习会有帮助。(搬砖):早在20世纪70年代,…

    2022年10月8日
    4
  • Pycharm社区版创建Flask项目详解「建议收藏」

    Pycharm社区版创建Flask项目详解「建议收藏」一、在原有工程上修改1、创建工程选择newproject创建工程输入项目名,选择配置好的虚拟环境项目创建好之后是一个空的项目,里面没有任何文件,下面我们来新建工程目录2、配置工程目录在工程根目录新建app.py文件在app.py中的代码如下:fromflaskimportFlask,render_templateapp=Flask(__name__)app.config[‘SECRET_KEY’]=’1456719640@qq.com’@app.rou

    2022年8月29日
    3
  • stm32开发教程_单片机STM32

    stm32开发教程_单片机STM32本博客的编写目的:一、自我总结,记录。二、分享,输出,加深思考。三、不作细致如书本般编排,尽管那样的排版很好看,但是过于耗费时间,还有很多东西没有必要说明,完全可以自己去解决,但还是尽量做好排版,便于阅读。四、尽可能举一反三,做到真正能够处理实际问题。STM32开发实战(1)目录一、概述,目的二、搭建步骤三、时钟部分案例分析四、理论总结一、

    2025年9月29日
    3
  • python中dtype的使用规范_Python numpy.dtype() 使用实例

    python中dtype的使用规范_Python numpy.dtype() 使用实例Thefollowingarecodeexamplesforshowinghowtouse.TheyareextractedfromopensourcePythonprojects.Youcanvoteuptheexamplesyoulikeorvotedowntheexmaplesyoudon’tlike.Youcanal…

    2022年6月6日
    82
  • 分析开源项目[通俗易懂]

    分析开源项目[通俗易懂]手把手教你分析开源项目不知道代码怎么来的?代码跑不起来?项目对自己有帮助,不会模块化分析?任何一个开源项目,都可以让自己得到提升!这里以EL-ADMIN为例https://el-admin.vip/1、观察开源项目后端代码:前端代码:2、开源项目下载可使用zip下载,或者Git观察:用了哪些技术(springboot,vue,redis,)是否有数据库(mysql)你的环境是否匹配(Java,Maven,npm,nodejs,)通过了,然后再想办法运行3、跑

    2022年6月11日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号