MySQL数据库基础(3):库的操作

🌸雨落在了我的手上:个人主页

🐟个人仓库:Gitee仓库

❄️个人专栏:<<JaveSe>> <<C语言>> <<C语言数据结构>>** <<Java数据结构*** >>***

<<MySQL数据库基础 >>

🔥🔥🔥 人生格言:无人扶我青云志,我自踏雪至山巅

🎬 博主简介:


目录

一:本节⽬标

二:查看数据库

1.语法

三:创建数据库

1.语法

2.⽰例

四:字符集编码和校验(排序)规则

1.查看数据库⽀持的字符集编码

2.查看数据库⽀持的排序规则

3.不同的字串集与排序规则对数据库的影响

4.查看系统默认字符集和排序规则

5.创建数据库时指定字符集和检验规则

五:查看创建语句

1.语法

2.⽰例

六:修改数据库

1.语法

2.⽰例

七:删除数据库

1.语法

2.⽰例

3.注意事项


内容大纲:

本文系统讲解MySQL数据库的创建、查看、修改与删除操作,重点掌握CREATE DATABASE、SHOW DATABASES、ALTER DATABASE及DROP DATABASE语句。介绍了字符集(如utf8mb4)与排序规则(如utf8mb4_0900_ai_ci)的作用与选择,强调其对数据存储与比较的影响。通过示例演示了指定字符集、校验规则及查看创建语句的方法,并提醒删除数据库的不可逆性,确保操作安全。


一:本节⽬标

• 掌握创建、查看、修改和删除数据库

• 了解字符集编码和排序规则

二:查看数据库

1.语法

sql 复制代码
show databases;

• databases是复数形式

• ⼤⼩写都可以

三:创建数据库

1.语法

sql 复制代码
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:表⽰⾃定义的数据库名

• { } ⼤插号表⽰必须选

• | 表⽰任选其中⼀个

• 中括号表⽰是可选项

• CHARACTERSET:指定数据库采⽤的字符集编码

• COLLATE:指定数据库字符集的校验规则

• ENCRYPTION:数据库是否加密,MySQL8.0.16中引⼊的新选项

2.⽰例

创建⼀个名为test+班级号的数据库

⾃定义⼀个数据库名,如果数据库不存则创建

重新运⾏上⾯的语句观察现象

上面这个命令出现了警告,关键字 if not exists ,这个关键字可以检查我们是否已经拥有了对应的数据库,警告我们当前已经存在了对应名名称的数据库

查看警告信息

sql 复制代码
show warnings;

这里提示我们当前已经存在了对应的数据库

数据库创建成功后,会在数据⽬录下⽣成⼀个与数据库同名的⽬录,⽤于保存数据库中所有的数据

四:字符集编码和校验(排序)规则

1.查看数据库⽀持的字符集编码

sql 复制代码
show charset;

• MySQL8.0默认的字符集编码是 utf8mb4 ,MySQL5.7默认的字符集是latin1

2.查看数据库⽀持的排序规则

sql 复制代码
show collation;

• MySQL8.0默认的排序规则是 utf8mb4_0900_ai_ci , MySQL5.7默认排序是utf8mb4_general_ci

3.不同的字串集与排序规则对数据库的影响

• u tf8mb4_0900_ai_ci 是MySQL8.0引⼊的新规则,在⽼版本中不能识别;

• ut f8mb4 编码是对 Unicode 字符集的⼀种实现,⽤1到4个字节表⽰⼀个字符,可以表⽰世界上 ⼏乎所有的字符,⽽且更节少空间

• 0900 是基于UCA9.0.0算法,UCA是UnicodeCollationAlgorithm的缩写

• ai是Accent-insensitive的缩写,表⽰⼝声不敏感

• ci是Case-insensitive的缩写表⽰⼤⼩写不敏感

• as是Accent-sensitive的缩写,表⽰⼝声敏感

• cs是Case-sensitive的缩写,表⽰⼤⼩写敏感

• bin表⽰⼆进制

4.查看系统默认字符集和排序规则

查看系统默认字符集

sql 复制代码
show  variables like  '%character%';

查看系统默认排序规则

sql 复制代码
show variables like '%collation%';

5.创建数据库时指定字符集和检验规则

• 创建⼀个库名为班级名,字符编码集为 utf8mb4 ,排序规则为 utf8mb4_0900_ai_ci 的数据 库,数据库不存在时则创建

sql 复制代码
create database if not exists java01 character set utf8mb4 collate utf8mb4_0900_ai_ci;

数据库创建成功之后,在数据⽬录下会⽣成⼀个与数据库同名的⽬录,数据库中的所有数据都保存在 这个⽬录下

五:查看创建语句

1.语法

sql 复制代码
show create database db_name

2.⽰例

sql 复制代码
show create database java01;

• 数据库名字的反引号``,是为了防⽌使⽤的数据库名刚好是关键字

• /*!40100default.... */ 和/*!80016 DEFAULT...*/ 这个不是注释,表⽰当前mysql版本⼤于4.01和 8.0.16时,分别执⾏对应的语句

六:修改数据库

1.语法

sql 复制代码
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}
}

对数据库的修改主要是修改数据库的字符集,校验规则

2.⽰例

• 将test+班级名的数据库字符集改成gbk

sql 复制代码
alter database test001 character set gbk;

查看

sql 复制代码
show create database test001;

七:删除数据库

1.语法

sql 复制代码
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name

2.⽰例

sql 复制代码
drop database testdb;

3.注意事项

• 删除数据库是⼀个危险操作,不要随意删除数据库

• 删除数据库之后,数据库对应的⽬录及⽬录中的所有⽂件也会被删除

• 删除数据库之后,使⽤showdatabases;语句查看不到对应的数据库

以上就是我们的全部内容了!!!!

相关推荐
slandarer2 小时前
MATLAB | R2026b 更新了哪些有趣的新东西
开发语言·数据库·matlab
其实防守也摸鱼2 小时前
SQL注入实验笔记
android·运维·数据库·安全·oracle·自动化
做运维的阿瑞2 小时前
一张用户表串懂 MySQL 的库、表、列、行、主键
数据库·sql·mysql·oracle
细嗅蔷薇@2 小时前
MySQL中数据类型介绍
数据库·mysql
JosieBook2 小时前
【数据库】MySQL 实战精通系列 · 第3篇:SQL 核心与复杂查询实战
数据库·sql·mysql
Dragon_qu·x2 小时前
MongoDB 高可用集群部署
运维·数据库·mongodb·k8s·helm
爱签AI电子合同2 小时前
电子合同大批量怎么测?并发与批量处理维度专项测评
服务器·数据库·人工智能·企业微信·电子签名
JosieBook3 小时前
【数据库】MySQL 实战精通系列 · 第4篇:索引原理与执行计划实战
android·数据库·mysql