MySQL基础篇(二)字符集以及校验规则

在MySQL基础篇(一)中,我们知道了如何创建数据库,这篇文章带大家了解创建的一些细节。

红色框:可省略,作用如果存在相同的数据库名称,就不会再创建,反之,创建。

蓝色框:COLLATE:指定数据库字符集的校验规则

CHARACTER SET:指定数据库采用的字符集

存储时,数据库会利用设置的字符集进行存储,读取时,必须采用对应的校验规则进行读取,否则可能会出错。

下面就带大家了解字符集和校验规则是如何设置以及字符集有什么影响。

创建时,没有指明字符集和校验规则,系统默认采用:字符集:utf8,校验规则:utf8_general_ci。

创建一个使用utf字符集,并带校验规则。

如何查看系统默认的字符集以及校验规则:

cpp 复制代码
show variables like 'character_set_database';//字符集
show variables like 'collation_database';//校验规则

如何查看数据库支持的字符集:

cpp 复制代码
show charset;

字符集主要是控制用什么语言。比如utf8就可以使用中文。

如何查看数据库支持的字符集校验规则:

cpp 复制代码
show collation;

校验规则对数据库的影响:

首先,我们需要了解校验规则的特性,utf8_general_ci(不区分大小写),utf8_bin(区分大小写)。

如何验证呢?

我们分别用上述校验规则创建数据库,进行存储数据,再将数据提取,看有没有区别。

那我们就查询单个字符,看区不区分大小写。

上面现象就是不同的库的校验集规则,表现出的不同形式。注意这是针对整个数据库的,同一个数据库中存的数据,都遵循这个数据库的字符集和校验规则。

相关推荐
我的ID配享太庙呀1 小时前
Django 科普介绍:从入门到了解其核心魅力
数据库·后端·python·mysql·django·sqlite
不辉放弃2 小时前
kafka的消费者负载均衡机制
数据库·分布式·kafka·负载均衡
拉姆哥的小屋2 小时前
用 Flask 打造宠物店线上平台:从 0 到 1 的全栈开发实践
数据库·oracle·flask
liliangcsdn3 小时前
mac neo4j install & verifcation
数据库·neo4j
Cyanto3 小时前
MyBatis-Plus高效开发实战
java·开发语言·数据库
-XWB-4 小时前
【Oracle】套接字异常(SocketException)背后隐藏的Oracle问题:ORA-03137深度排查与解决之道
数据库·oracle
睿思达DBA_WGX4 小时前
由于主库切换归档路径导致的 Oracle DG 无法同步问题的解决过程
运维·数据库·oracle
fengye2071614 小时前
板凳-------Mysql cookbook学习 (十二--------6)
学习·mysql·adb
!chen4 小时前
Oracle 19.20未知BUG导致oraagent进程内存泄漏
数据库·oracle·bug
DarkAthena5 小时前
【GaussDB】构建一个GaussDB的Docker镜像
数据库·docker·gaussdb