创建数据库
语法说明
CREATE DATABASE [IF NOT EXISTS] db_name
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name;
IF NOT EXISTS:可选参数,避免数据库已存在时报错。CHARACTER SET:指定数据库采用的字符集。COLLATE:指定数据库字符集的校验规则(排序规则)。
创建示例
1. 基础创建
CREATE DATABASE db1;
若未指定字符集和校验规则,系统将使用默认配置(通常为 utf8mb4 及对应的默认排序规则)。
2. 指定字符集
CREATE DATABASE db2 CHARACTER SET utf8mb4;
3. 指定字符集与校验规则
CREATE DATABASE db3 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
字符集与校验规则
查看系统默认配置
SHOW VARIABLES LIKE 'character_set_database';
SHOW VARIABLES LIKE 'collation_database';
查看支持的字符集与校验规则
SHOW CHARSET;
SHOW COLLATION;
字符集决定数据库支持的语言编码(如 utf8mb4 支持中文及 Emoji),而校验规则(Collation)决定字符串的比较和排序方式。两者具有严格的匹配关系。
校验规则对查询与排序的影响
校验规则名称通常以 _ci(Case Insensitive,不区分大小写)或 _bin(Binary,区分大小写)结尾。
1. 不区分大小写 (utf8mb4_general_ci)


