关注小聚,数据分析不迷路
刚入门SQL时很多人都搞不清SQL和MySQL,数据库之间的关系,新手很容易对此造成误解,认为MySQL就是一个数据库,其实不是这样,今天小聚就围绕下面两个方面展开,给大家带来入门MySQL数据库保姆级指南
“这是什么?“
“为什么要有这个?”
数据库
数据库,用来存储数据。由表组成,可以有0到n张表,表就像是Excel,它适合存放一些简单的文字信息:
一个人的身份证号码
电话号码
姓名
Excel不适合存放什么信息呢?
照片
电影
小说
这些单个大体量的文件对象,不会放在数据库里。
比如说,淘宝上所有的商品,背后的商品信息、店铺信息、销量等数据,就躺在数据库中的表格中,但是店铺上的宣传视频、图片、音乐,不会放在数据库中。
世界上有各种各样的数据库,但幸运的是,你只需要学会MySQL基本使用方法,就可以应对绝大多数的场景。
SQL
是一种编程语言,就像Java、C++、Python,但是它特别简单。
SQL是用来操纵数据库的一种语言。只需要上百个英文单词,SQL就可以对数据进行让人眼花缭乱的操作,非常容易上手。
下面这张图是SQL的常见分类,以及常用操作指令:
MySQL
MySQL是一种数据库软件,数据库和MySQL的关系,就像是聊天软件与QQ、微信的关系。
世界上有各种各样的数据库,比如Oracle、MySQL、SQL Server等等,一般互联网公司都会用MySQL,因为它是免费、使用范围最广,一般面试,也只会问及MySQL相关的知识。
关系
SQL,MySQL,数据库
总结一下,数据库是一种数据存储系统,其中最有代表性的是MySQL,它是使用最广泛的数据库,我们使用SQL语言对他进行操作。其实这些概念之间的关系用下面这张图就能搞懂:
也就是说,数据库是草图,MySQL是建筑师,数据可以理解成砖块,SQL是处理砖块(数据)的工具。
用来管理数据库的计算机系统称为数据库管理系统(Database Management System,DBMS)。
如何理解关系数据库管理系统(SQL Server、MySQL、Oracle等)呢?
打个比方,有了设计图纸,还要有建筑工人,才能把房子建起来;
而有了关系数据库,还要有关系数据库管理系统(DBMS),才能从数据库中提取和查询数据。
为什么要有数据库
因为Excel不能供一个大型系统使用,它的性能不够好。我们需要一个可以供多人同时访问、操纵、安全的数据存储系统。
通俗来说,数据库是一个共享的硬盘,可以多人同时地进行访问、更改数据。在数据量很大(0~300G)的时候,数据库的性能将会非常地好。(想象一下一个几十G的Excel,操作他将会非常困难)
数据库的基本操作
1. 查询数据库
1丨show databases;
下面图片展示的就是你当前有哪些数据库,这里因为小聚之前创建过一些数据库,所以你如果是第一次查询,可能我图片上的某些数据库你没有,这没有关系。这里要注意,因为数据库不止一个,即便是刚安装好的MySQL,里面默认存在的数据库也不止一个,所以是databases,千万别漏了s
2. 创建数据库
1丨create database XX(数据库名);
这里我创建了一个名为“hello”的数据库,显示"OK",表示成功。
在这里给大家补充一点,创建数据库的时候,默认的字符是"latin",也就是拉丁文,等到数据表的操作的时候再讲区别。不过这里还是告诉大家,如何创建数据库的时候,如何设置字符格式。
1丨create database XX(数据库名) charset = (字符编码,例如utf8);
我们平时学的中文的字符编码是"utf-8",但是在MySQL里面,中文字符编码是utf8,这点希望你注意。创建数据库还有一些细节性的操作,这里简单提一下。如果我们创建已存在的数据库,会发生什么事呢?下面我就创建一个已经存在的"test"数据库:
果然,报错了,它告诉我,不能创建数据库"test",因为这个数据库已经存在了,所以我们创建数据库的时候判断一下,如果不存在就创建:
1丨create database if not exists XX(数据库名);
这段代码的好处是显而易见的,在我们这里可能体现不出来,但如果是做项目的时候或者在企业中,数据库非常非常多,你用肉眼看都要看花了,到底哪些数据库已经存在了,名字被用过了?所以就可以用上面这句代码,下面我们用这段代码创建一下"test"数据库,看会发生什么事情?
看到没,显示"OK",没有报错了,但是有一个警告,这个警告就是告诉用户,"test"这个数据库存在。
还有个问题,有的人创建数据库起的名字和关键字相同,会发生什么呢?(关键字就是MySQL中有特定作用的词,比如说"show"、“create”)
这里英文太长了,有兴趣的读者可以自己去翻译一下,但是这里我们可以确实看到的是,名为"create"的这个数据库没有创建成功,报错了,那如果有的人说我就想创建一个名为"create"的数据库,怎么办呢?下面给出解决办法:
1丨create database `XX`(数据库名);(注意,这里``是反引号,在键盘tab上面)
3. 显示数据库信息
1丨show create database XX(数据库名);
这里可以看到,我刚才创建的"test"数据库,默认的字符是拉丁的,我之前创建的数据库,我设定了它的字符是中文,所以显示是"utf8"
4. 更改数据库的字符编码
1丨alter database XX(数据库名) character set utf8;
5. 删除数据库
1丨drop database XX(数据库名);
下面我删除刚创建的"hello"数据库
还是老问题,如果这个数据库不存在,我删除它,会发生什么呢?
很明显,报错了,因为不存在"a"这个数据库,我们可以判断一下,这个数据库存在才删除,下面给出代码。
1丨drop database if exists XX (数据库名字);
6. 选择数据库
这是数据库的最后一个基本操作,我们如果想要创建数据,必须要创建一个数据库,然后在数据库当中创建数据表,在数据表中进行操作,但是这么多数据库,计算机怎么知道我们选择的是哪个数据库呢?下面给出代码:
1丨use XX(数据库名);
选择数据库在我看来更像是“进入数据库”,因为好比图书馆,我得进入一个某一个库,才能进行书架和图书的操作。
结语
最后,关于数据表的基本操作我们之后再讲。
作为新手来说,一开始先掌握好这些基础的,再去使用图形化工具,能够很好的理解每一步操作,所以这也是一个打基础的过程,希望能带给初学的你一点帮助~
END
聚数学院年末福利持续赠送中,
小聚整理汇总了官方B站所有视频相关配套资料
现在 全套免费送!!
领取方式:
关注同名公众号,扫码进入学习资料分享群,备注所需视频资料期数,即可获取!小聚将持续同步跟新B站视频与资料.