关于数据库、DBMS、sql和mysql的整体认知

您所在的位置:网站首页 oracle和mysql的关系 关于数据库、DBMS、sql和mysql的整体认知

关于数据库、DBMS、sql和mysql的整体认知

2024-07-16 03:53| 来源: 网络整理| 查看: 265

这篇文章,主要是对数据库、sql、mysql的梳理,重点解答个人以前的很多认知层面的疑惑,不涉及详细的知识点。如有遗漏或错误,还请各位大佬指正

以下内容主要涵盖了这三方面的内容:

数据库的认识数据库管理软件DBMS整体认知mysql三者关系的理解

最后有自己基于这三者的理解,对其关系的形象化比喻,希望对于初学mysql的小伙伴有所帮助。

目录 一、认识数据库DB二、了解数据库软件DBMS三、整体认知SQL四、三者关系的理解

一、认识数据库DB

1、为什么要使用数据库?

在我学习mysql前,了解到的数据存储容器主要是集合、数组、文件。但集合、数组是将数据存储在内存中,一旦电脑断电,数据就丢失了;而文件虽然比较安全,但数据量大时,我们查询数据等操作效率就很低。

因此,数据库的使用好处就提现出来了:数据库可以将数据持久化到本地,并且实现数据的结构化查询,方便管理。

2、数据库的相关概念

DB:数据库(DataBase),是按照数据结构来组织、存储和管理数据的仓库。DBMS:数据库管理系统(DataBase Management System),又称为数据库软件(产品),是一种用于操纵和管理DB(数据库)中的数据的大型软件(为便于理解,后文就直接称为数据库软件啦)。SQL:结构化查询语言(Structure Query Language),用于和DBMS通信的语言。

3、数据库存储数据的特点

(这里指的是关系型数据库的特点)

一个数据库可以有多个表,每个表都有一个名字用来标识自己,表明具有唯一性表由列组成,也称为字段。所有表都是由一个或多个列组成的,每一列类似java 中的”属性”表中的数据是按行存储的,每一行类似于java中的“对象”数据的存储,是先存到表中,在存到数据库中 二、了解数据库软件DBMS

数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。

数据库软件分为: 基于共享文件系统的DBMS(例:Access); 基于客户机Customer—服务器Server的DBMS(例:mysql、Oracle、SqlServer)

我们通常所说的安装数据库,其实是指安装数据库软件的服务端(我使用的数据库软件是mysql,所以此模块后续的阐述都是建立在mysql基础上啦)

为什么选择MySQL:开源、免费、成本低;性能高、移植性也好;体积小,便于安装数据库服务端的安装:安装的时候,注意勾选“配置到环境变量”,这样就可以使用命令行运行啦(另外,单独提一下软件安装目录里的my.ini文件,这个文件里保存了mysql客户端、服务端的相关配置详情,用户登录信息、端口号、字符集、最大连接数等等)图形化用户界面客户端的安装:安装好mysql后,它有自带的客户端,但不太好使,所以一般会安装其他的图形化用户界面的客户端,例如SQLyog、navicat等,或者直接用命令行,哈哈如何使用MySQL服务:通过管理员身份运行cmd后 net start 服务名(启动服务) net stop 服务名(停止服务) mysql -h主机名 -P端口号 -u用户名 -p密码 (若是登录本机数据库,主机端口号可不写;-p后面可不写密码,换行后再写) exit或ctrl+C(退出) 三、整体认知SQL

SQL(Structure Query Language)结构化查询语言,用于和数据库软件通信的语言。

通信?是什么意思?这样说,就比较好理解了:

比如在银行里,我们想取钱,直接告诉柜员我们的需求就可以了。但面对数据库软件的时候,我们有数据操作需求时,如何让数据库软件明白并执行我们给出的需求呢?那就是说数据库软件能听懂的语言,这里说的就是sql语言啦!

也就是通过sql语言,数据库能明白我们想要做什么操作。

1、sql语言的优点

不是某个特定数据库供应商专有的语言,几乎所有 DBMS(数据库软件)都支持SQL ;简单易学 (相较于java、c、c++等,语法简单易上手)虽然简单,但实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作

2、分类

DQL:数据查询语言,用于查询数据记录→select查询DML:数据操纵语言,用于修改数据记录→delete/truncate删除、update修改、insert添加DDL:用于定义数据库/表的结构,比如创建、修改或删除数据库对象/表→create创建、alter修改、drop删除(废弃)DCL:数据库控制语言,用于设置或更改数据库用户、角色权限→GRANT 授权、REVOKE 取消授权TCL:事物控制语言,用来控制数据库的访问→COMMIT 提交、ROLLBACK 回滚、SAVEPOINT 设置保存点、SET TRANSACTION 改变事务选项CCL:指针控制语言,用于对一个或多个表单独行的操作→DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT(此语言使用较少)

3、语法规范

不区分大小写,但建议关键字大写、表明、列表小写每条命令需以“;”或“/g”结尾每条命令根据需要,可以进行缩进或换行注释: 单行注释:“#注释文字” 或 “-- 注释文字”(中间有空格) 多行注释:/* 注释文字 */ 四、三者关系的理解

数据Data:钱 数据库DB:金库 数据库管理系统(数据库软件)DBMS:银行 数据查询语言sql:对话沟通的一门语言 程序员:客户

每个客户手上都有钱,但钱多了放家里或身上容易丢失或者不方便拿取,这就需要放到一个金库里集中存储;金库由银行来帮我们管理,要取钱或者存钱,直接在银行告诉柜员我们的需求即可。

同样的,数据也是一样: 每个程序员手里都有数据,当数据量越来越大时,我们就把数据存储到数据库里;为便于管理,我们需要借助数据库软件,有数据增删改查的操作需求时,通过sql语言,告诉数据库软件即可。

客户可以根据自己的需求选择相应的银行,同样的,程序员也可以根据数据得管理需求,选择相应的数据库和数据管理软件!

2020年8月14日 后续有新的发现,再来补充!也欢迎大家指正~



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3