
MySQL学习:
https://blog.csdn.net/2301_80220607/category_12971838.html?spm=1001.2014.3001.5482
前言:
在上一篇我们已经讲解了数据库的基本内容,相信大家对数据库已经有了一些自己的理解,从这篇开始我们就开始正式进入如何操作数据库相关内容的学习,首先我们先来学习一下库的相关的操作
在MySQL中,数据库(Database)是存储有组织数据的容器,一个MySQL服务器可以管理多个数据库,每个数据库包含多个表(Table)、视图(View)、存储过程(Procedure)等对象。
另外想要了解底层的同学可以去了解一下mysql的主从复制原理,这个在大厂面试中经常出现
在对库进行操作之前,我们要先查看一下我们现在已经有哪些库了,查看库的语句为:
SHOW DATABASES;(大小写均可)

如图,我这里就已经有了六个数据库
之前我们在讲操作系统的时候总喜欢提的一句话就是:在操作系统下,一切皆文件。
其实这里的数据库在操作系统下同样也是以文件的形式存在的,我们可以查看/var/lib/mysql这个路径,在这个路径中我们就可以看到我们的这几个数据库,而且是以文件夹的形式存在的

CREATE DATABASE [IF NOT EXISTS] 数据库名
[CHARACTER SET 字符集名称]
[COLLATE 校对规则];选项 | 说明 | 示例值 |
|---|---|---|
IF NOT EXISTS | 避免重复创建时报错 | IF NOT EXISTS |
CHARACTER SET | 指定字符集 | utf8mb4 |
COLLATE | 指定排序规则 | utf8mb4_general_ci |
注释:[ ]中的内容属于可选项,并不一定要加上
创建简单数据库:
CREATE DATABASE my_shop;
出现这个就代表我们创建成功,此时我们查看库或者查看特定路径下是否存在文件夹都可以验证这一点
创建带字符集的数据库(推荐使用utf8mb4以支持emoji表情):
CREATE DATABASE my_blog
CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;安全创建(避免重复):
CREATE DATABASE IF NOT EXISTS my_forum;
如图,此时我们创建一个已经存在的数据库的时候就会出现警告创建失败
在上面创建数据库中我们提到了字符集和校验规则的概念,下面我们来讲一下它对我们创建数据库有什么影响
首先我们来看一下系统默认的字符集和校验规则:
show variables like 'character_set_database';
show variables like 'collation_database';
以上两种就是系统默认的字符集和校验规则
首先我们先讲一下字符集的作用:其实就是控制使用什么语言,比如这里我们系统默认的utf8就可以使用中文,校验规则则需要与字符集保持一致
查看字符集:
show charset;
(节选部分)
查看校验规则:
show collation;
也是有很多
我们可以通过校验规则在创建数据库时做一些有意思的操作,比如创建的数据库是否区分大小写等
创建一个区分大小写的数据库:
create database test2 collate utf8_bin;创建一个不区分大小写的数据库:
create database test1 collate utf8_general_ci;对数据库的修改操作主要是针对数据库的字符集和校验规则
ALTER DATABASE 数据库名
CHARACTER SET 字符集名称
COLLATE 校对规则;示例:
ALTER DATABASE my_shop
CHARACTER SET utf8mb4
COLLATE utf8mb4_bin;要对特定数据库进行操作,需要先选择它:
USE 数据库名;示例:
USE my_shop;查看当前选择的数据库:
SELECT DATABASE();
DROP DATABASE [IF EXISTS] 数据库名;DROP DATABASE old_database;DROP DATABASE IF EXISTS temp_database;Q:创建数据库时报错"Can't create database"怎么办? A:检查:
Q:如何查看数据库的创建语句?
SHOW CREATE DATABASE 数据库名;Q:为什么推荐使用utf8mb4而不是utf8? A:MySQL的utf8只支持最多3字节字符,而utf8mb4支持完整的4字节UTF-8编码(如emoji表情)。
掌握MySQL数据库的基本操作是数据库管理的第一步。记住:
以上就是本篇关于数据库各种操作的讲解了
感谢各位大佬观看,创作不易,还望各位大佬点赞支持!!!