MySQL数据库DDL操作详解
发表时间: 2024-07-09 01:00
-- 显示所有数据库SHOW DATABASES;-- 创建数据库CREATE DATABASE [IF NOT EXISTS] 数据库名称 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];-- 删除数据库DROP DATABASE [IF EXISTS] 数据库名称;-- 使用数据库USE 数据库名称;-- 显示当前选择的数据库SELECT DATABASE();-- 修改字符集 排序规则ALTER DATABASE 数据库名称 DEFAULT CHARSET 修改字符集 COLLATE 修改的排序规则;
# 指定字符集和排序规则CREATE DATABASE IF NOT EXISTS test DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;# 使用默认字符集、默认排序规则CREATE DATABASE IF NOT EXISTS test ;# 直接创建CREATE DATABASE test ;
直接创建数据库时,会使用默认的字符集和默认的排序规则,可以使用如下命令查看当前数据服务和数据库的字符集和排序规则
# 查看服务器级别的默认字符集和排序规则:SHOW VARIABLES LIKE 'character_set_server';SHOW VARIABLES LIKE 'collation_server';# 查看当前数据库的默认字符集和排序规则:SELECT @@character_set_database, @@collation_database;
ALTER DATABASE 数据库名称 DEFAULT CHARSET 修改字符集 COLLATE 修改的排序规则;
如果想要修改MySQL的默认字符集和排序规则,需要做以下两步:
[mysqld] character_set_server = utf8mb4 collation_server = utf8mb4_unicode_ci
这里的utf8mb4是一种常见的字符集,支持更广泛的Unicode字符集,utf8mb4_unicode_ci是对应的排序规则,适合多语言和多字符集的应用。
在Linux系统上,可以使用如下命令重启MySQL服务:
sudo systemctl restart mysql;
在Windows系统上,可以在服务管理器中重启MySQL服务。
验证修改是否生效: 使用前面提到的命令重新检查默认字符集和排序规则,确认修改是否成功应用。
# 直接删除DROP DATABASE tests;# 存在才删除DROP DATABASE IF EXISTS tests;
直接删除语句在待删除数据库不存在时会报错,加了 if exists 判断,当待删除数据库不存在时也不会报错。