欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL基础篇(一)--深入理解RDBMS

程序员文章站 2022-07-12 20:36:40
...

专业的东西,总要讲究个术语,才能显得学问高深。所以呢,在说MySQL之前,需要普及下这些数据库术语。

我们平常说的关系型数据库,如Oracle,MySQL等等,为啥叫关系型数据库?想过没有?

关系型数据库,全称叫关系型数据库管理系统,就是我们常常看见某些书中写的RDBMS。我们解释下这个名词包含的意思,关系型数据库的概念就出来了。

一、RDBMS(Relational DataBse Management System)

1、数据库:就是RDBMS中的DB,全拼为DataBase,我们常常接触仓库的概念,如maven中的私服,其实就是本地仓库。写这些东西的人,他们也是从生活中来的,为了让大家能明白他们所表达的意思,把存储数据信息的仓库就叫数据库了。

既然是仓库,总得有个摆放位置和摆放内容吧,要不然管仓库的还不得疯了。你们以为规则是怎么来的?就是在定义时候约定的,仓库的这个位置放高粱,那个位置放大米。都是聪明人哪。

对应的,我们数据库的基本概念也就来了:

①表:我们常见的table,表是什么?就是一类数据的集合,大家应该见过纸质的各种表格,其实我们说的数据表就是把纸质表电子化了,这也就是后来为啥有了持久化的概念--因为网络存放总比你人为纸质存放的长久哪。那数据库是什么?就是放各种数据表的地方。

②记录:数据表中的每一行就是一条记录。我们的签到表,张三-8:30签到-17:30签退。

③列项:记录中包含了多列,每一列就是一个列项。也就是我们的数据表每一行记录都至少包含一个以上的列项(估计没人傻到一个表我就放一列)。就像我们的签到表,包含了三列,姓名(张三),签到时间(8:30),签退时间(17:30)。

 

2、管理系统:就是RDBMS中的MS。一说系统,就是软件层面的东西。前面限定两字:管理。

管理谁?当然是管理数据表了。

怎么管理?这才是管理系统的关键。一说管理,我就想起了领导。对上要提供人员信息,对下要做好考核(人员的变迁等等)。数据库对应的管理系统也一样,不要觉得它有多深奥,一样的。管理系统就是负责对外提供:

①检索、查询功能:比如我想知道小白属于哪个部门。

②插入功能:新来人了,就安排在你们部门了。

③修改功能:小白部门换了。

④删除功能:小白离职了。

熟不熟悉,这就是我们说的增删改查功能,这就是管理系统要做的。

有好事者,把这几个功能合起来又起了一个名字,叫DML,这是个啥玩意?数据操作语言(Data Manipulation Language ),其实就是个名称,没啥用。

3、关系型:就是RDBMS中的R。专业术语中他们说的关系型,就是将各种表之间的数据关系定义了关系模型R(U,D,Dom,F)--其实把深奥的东西说的简单点不好吗?--有想要的了解的去搜吧。

R的本质就在于各种表之间的数据关系,关系型数据库能够通过不同表之间的关系,把不同表之间的相关信息查询检索出来(我们是不是常常用到关联查询呢?),这也正是关系型数据库的强大之处。

 

二、MySQL的体系结构

请去看这篇博客,一张图就懂。http://zhaodengfeng1989.iteye.com/blog/2419768

MySQL采用的是客户端/服务器(CS)的体系结构。

客户端:连接数据库服务器(我们一般都用navicat),发送各种请求。

服务端:接收请求,处理请求(就是根据请求类型去做数据处理,你是给我数据还是要我做啥操作)。服务端能够强制执行请求的并发控制,不管你请求怎么来,我自己决定你们的执行顺序,反正不能让你乱来。