数据库的创建

Syntax:
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
    [create_specification] ...

create_specification:
    [DEFAULT] CHARACTER SET [=] charset_name
  | [DEFAULT] COLLATE [=] collation_name

1、创建数据库的时候有两个选项,数据库版本更新后,在创建数据库的时候就不区分这两个关键字了,只要记住创建用database就可以了

2、if no exists 表示不存在才会创建,可选项。建议在sql脚本中使用create命令创建数据库时加入此项,以免对应名称的数据库已经存在导致sql脚本终止

3、 [create_specification] 表示我们可以在创建数据库的时候指定对应的数据库规范

4、我们可以再创建数据库的时候指定数据库的字符集,使用 character set对用的字符集名称即可指定使用什么字符集,
如果使用了default关键字,这个创建的数据库中创建的所有表的迷人都会继承这个数据库的字符集,。default为可选项
可以使用show character set; 查看所有的字符集,针对书籍库有数据库级别的字符集,针对表有表级别的字符集。
如果没有指定字符集,则数据库会继承服务器级别的字符集
5、可以在创建数据库时指定数据库的排序规则,同一字符集下面可能有多种排序规则,但是一种排序规则只能对应一种字符集,
当指定一种排序规则,则不用再指定对应的字符集,因为这种排序规则肯定是针对某个字符集指定的排序规则,所以,给定了排序规则,则不要同时指明字符集,每一个字符集都有默认的排序规则。

示例

create database DB_NAME

mysql创建数据库在哪 mysql创建数据库步骤_排序规则

create database hyt 创建数据库名为hyt的DB

mysql创建数据库在哪 mysql创建数据库步骤_mysql创建数据库在哪_02

creatae database M36 default character set utf8 创建数据库为M36的DB,并且设置默认的字符集为utf8

mysql创建数据库在哪 mysql创建数据库步骤_数据库_03


mysql创建数据库在哪 mysql创建数据库步骤_mysql创建数据库在哪_04

create databases if not exists db1; 如果数据库不存在,则创建

mysql创建数据库在哪 mysql创建数据库步骤_排序规则_05

查看数据库

列出已有的数据库

show databases;


mysql创建数据库在哪 mysql创建数据库步骤_数据库_06

列出创建对用数据库的sql语句

show create database hyt;

mysql创建数据库在哪 mysql创建数据库步骤_创建数据库_07

查看可用的字符集命令

show character set;


mysql创建数据库在哪 mysql创建数据库步骤_排序规则_08

查看排序方式的命令

show collation;

查看当前数据库与当前连接的信息

use mysqlstatus

mysql创建数据库在哪 mysql创建数据库步骤_数据库_09


mysql创建数据库在哪 mysql创建数据库步骤_创建数据库_10

修改数据库

Syntax:ALTER {DATABASE | SCHEMA} [db_name]alter_specification ...
ALTER {DATABASE | SCHEMA} db_name
UPGRADE DATA DIRECTORY NAMEalter_specification:
[DEFAULT] CHARACTER SET [=] charset_name
| [DEFAULT] COLLATE [=] collation_name
#### 修改数据库字符集 
` show database M36 character set utf8mb4;`  
![](https://s2.51cto.com//images/blog/201905/04/2a2aca4d4f80c1a16c32028a9b339f35.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)  
![](https://s2.51cto.com//images/blog/201905/04/5a29bda79152be12b518e1ec3b0bf888.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)  
#### 修改数据库的字符集,并设置为默认字符集,数据库中的表都会继承此字符集 

`alter database M36 default character set utf8mb4;`  
# 删除数据库

Syntax:
DROP {DATABASE | SCHEMA} [IF EXISTS ] db_name

> **删除数据库,一旦删除无法恢复** 

drop database db_name
![](https://s2.51cto.com//images/blog/201905/04/593f45d90ca2794d8bb23fee9f6343a6.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)  
![](https://s2.51cto.com//images/blog/201905/04/768a8896d3dad0d35f8ec40c6d82340b.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=) 

> ** ENTER前请三思,删库有风险,回车需谨慎**


https://blog.51cto.com/14116879/2388871