乐趣区

关于数据库:MySQL笔记二之DATABASE操作与编码

本文首发于公众号:Hunter 后端

原文链接:MySQL 笔记二之 DATABASE 操作与编码

这一篇笔记介绍 DATABASE 相干操作

  1. DATABASE 相干操作
  2. DATABASE 编码

1、DATABASE 相干操作

首先通过 root 账号,或者后面咱们创立的 hunter 账号进入 MySQL 服务

这两者对于咱们,接下来的操作影响都不大,因为咱们只是须要对数据库的数据进行操作。

MySQL 的构造应该都理解,库 -> 表 -> 字段,大略是这三级。

其中,DATABASE 就是咱们的库。

查看 DATABASE

通过上面的命令查看以后用户的数据库:

SHOW DATABASES;

这个命令输出后,就会列出以后用户能够应用的所有的数据库

如果是想依据关键词来搜寻,加上 like 操作:

show databases like '%db%';

留神 :数据库命令对于大小写是不敏感的,比方下面的命令,小写写成 show databases 也是能够的

创立 DATABASE

如果咱们想创立一个名为 db_test 的数据库,命令如下:

create database db_test;

而后执行 show database 能够看到刚刚创立的 DATABASE

应用 DATABASE

在上一步列出数据库后,如果要应用某个数据库,应用 use 命令,假如数据库为 db_test:

use db_test;

而后就会进入到这个数据库,就能够查看这个数据的相干信息,比方查看所有表,查看某张表数据等操作

如果是想切换到另一个数据库,比方,切换到 db_test_2,间接反复下面的命令,替换 DATABASE 的名称即可:

use db_test_2;

这样就切换到了 db_test_2 数据库

留神: 在每一次进入 MySQL 之后,如果要操作表,都须要应用这条命令才能够操作表数据

删除 DATABASE

删除命令为 drop,应用形式如下:

drop database db_test;

而后执行 show databases 就能够看到 db_test 数据库曾经不存在了。

查看 DATABASE 创立命令

比方对于数据库 db_test,咱们想创立一个跟它截然不同的数据库,然而名称不一样,为 db_test_2,咱们能够先查看 db_test 的创立命令,而后将名称替换成 db_test_2 即可:

show create database db_test;

而后能够看到输入:

CREATE DATABASE `db_test` /*!40100 DEFAULT CHARACTER SET latin1 */

能够看到这条创立 DATABASE 的命令前面加了一些货色,这个就是数据库的编码信息,这个编码信息在上面会介绍到

留神: 数据库名称是不可更改的

查看数据库所在目录

show variables like '%datadir%';

2、DATABASE 编码

如果是间接通过 create database db_test 的形式来创立数据库,零碎会默认给库的编码为 latin1,这种编码方式是不反对中文的。

而如果咱们在创立 DATABASE 的时候,应用了某个编码,在前面创立表的时候,会沿用 DATABASE 的编码,而表字段也会沿用表的编码。

所以,如果想要想要数据库表插入的数据反对中文,在创立库的时候就须要对库的编码进行指定,以下是创立库时指定编码的命令:

CREATE DATABASE db_test DEFAULT CHARACTER set utf8;

留神: 这个中央 utf8 编码能反对中文的三个字节,而如果有往 MySQL 存储 Emoji 表情或者其余特殊字符为四个字节的状况,须要用上 utf8mb4 的编码。

创立了数据库之后,能够通过上面的命令查看数据库编码:

use db_test;
show variables like '%character%';

在给出的数据里,能够看到 character_set_database 这一行就是咱们的数据库编码

批改数据库编码

如果咱们在创立数据库的时候没有指定编码,那么零碎就会默认应用 latin1 编码,能够通过上面的形式来批改 DATABASE 的编码:

alter database db_test default character set utf8mb4;

如果想获取更多相干文章,可扫码关注浏览:

退出移动版