目录
一、查看数据库
1.显示所有的数据库
二、创建数据库
1.创建数据库
2.查看警告信息
3.创建一个名为database的数据库
三、字符集编码和校验(排序)规则
1.查看数据库⽀持的字符集编码
2.查看数据库⽀持的排序规则
3.一条完整创建库的语句
4. 不同的字串集与排序规则对数据库的影响
5.查看系统默认字符集
6.查看系统默认排序规则
四、查看创建语句
1.查看创建语句
五、修改数据库
1.修改数据库
六、删除数据库
一、查看数据库
1.显示所有的数据库
show databases; -- 显示所有的数据库
information_schema,mysql,performance_schema,sys 系统级别数据库,不能随便修改或删除
sakila,world 实例库,用于练习,可以随意修改
二、创建数据库
1.创建数据库
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_option] ...
create_option: [DEFAULT] {
CHARACTER SET [=] charset_name
| COLLATE [=] collation_name
| ENCRYPTION [=] {'Y' | 'N'}
}
⼤写部分表⽰关键字
db_name:表⽰⾃定义的数据库名
{}:⼤插号表⽰必须选
|:表⽰任选其中⼀个
[]:中括号表⽰是可选项
CHARACTER SET:指定数据库采⽤的字符集编码
COLLATE:指定数据库字符集的校验规则
ENCRYPTION:数据库是否加密,MySQL 8.0.16中引⼊的新选项
2.查看警告信息
show warings; -- 打印错误信息
在公司里部署一个新的数据库,一般要把所有的SQL语句的写好,放在一个文件里统一执行
1.创建库
2.创建表
3.往表里填数据
加了if not(条件判断语句) 语句后 错误只会报一个警告,而不会中断整个SQL语句
3.创建一个名为database的数据库
三、字符集编码和校验(排序)规则
为数据进行编码然后保存
1.查看数据库⽀持的字符集编码
show charset; -- 查看数据库⽀持的字符集编码
2.查看数据库⽀持的排序规则
show collation; -- 查看数据库⽀持的排序规则
3.一条完整创建库的语句
create database if not exists java114 character set utf8mb4 collate utf8mb4_0900_ai_ci;
强烈推荐用这种创建方式
4. 不同的字串集与排序规则对数据库的影响
utf8mb4_0900_ai_ci 是MySQL8.0引⼊的新规则,在⽼版本中不能识别;
utf8mb4 编码是对 Unicode 字符集的⼀种实现,⽤1到4个字节表⽰⼀个字符,可以表⽰世界上
⼏乎所有的字符,⽽且更节少空间
0900 是基于 UCA 9.0.0算法,UCA是Unicode Collation Algorithm的缩写
ai是Accent-insensitive的缩写,表⽰⼝声不敏感
ci是Case-insensitive的缩写表⽰⼤⼩写不敏感
as是Accent-sensitive的缩写,表⽰⼝声敏感
cs是Case-sensitive的缩写,表⽰⼤⼩写敏感
bin表⽰二进制
5.查看系统默认字符集
show variables like '%character%'; -- 查看系统默认字符集
6.查看系统默认排序规则
show variables like '%collation%'; -- 查看系统默认排序规则
四、查看创建语句
1.查看创建语句
show create database java114;
五、修改数据库
1.修改数据库
ALTER {DATABASE | SCHEMA} [db_name]
alter_option ...
alter_option: {
[DEFAULT] CHARACTER SET [=] charset_name
| [DEFAULT] COLLATE [=] collation_name
| [DEFAULT] ENCRYPTION [=] {'Y' | 'N'}
| READ ONLY [=] {DEFAULT | 0 | 1}
}
alter :修改库和表级别的都是alter关键字
将test114的字符编码改为GBK
alter database test114 character set gbk;
六、删除数据库
1.删除数据库
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name;
七、使用数据库
1.选择数据库
use java114 -- 选择数据库
//可以有分号,也可以没有分号,因为它是mysql客户端的一个选项
2.查看选择的数据库
select database(); -- 查看当前选择的数据库