【MySQL数据库】字符集与校对集

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL中提供了许多校对集,用于为不同字符集指定比较和排序规则。校对集的名称由“_”分隔的3部分组成,开头是对应的字符集,中间是国家名或general,结尾是ci、cs或bin。ci表示不区分大小写,cs表示区分大小写,bin表示以二进制方式比较。

image.gif


🙋‍ 哈喽大家好,本次是MySQL数据库原理系列第九期

⭐本期内容:字符集与校对集

🏆系列专栏:MySQL数据库

😄还请大家多多指教呀~

👍欢迎大佬指正,一起学习,一起加油!


字符集与校对集概述


字符集


字符指计算机中保存的各种文字和符号,包括各种国家的文字、标点符号、图形符号、数字等。由于计算机采用二进制保存数据,用户输入的字符将会按照一定的规则转换成二进制后保存,这个过程就是字符编码,将一系列字符的编码规则组合起来就形成了字符集。


输入show character set;可以查看可用字符集。

Charset:字符集名称

Description:描述信息

Default collation:默认校对集

Maxlen:单字符的最大长度


9a306aef6a4a437d969107cae0486f97.png


常用字符集


字符集 单字符最大长度 支持的语言
latin1 1字节 西欧字符、希腊字符等
gbk 2字节 简体和繁体中文、日文、韩文等
utf8 3字节 世界上大部分国家的文字


单字符占用的存储空间越多,所支持的语言越多


校对集


MySQL中提供了许多校对集,用于为不同字符集指定比较和排序规则。校对集的名称由“_”分隔的3部分组成,开头是对应的字符集,中间是国家名或general,结尾是ci、cs或bin。ci表示不区分大小写,cs表示区分大小写,bin表示以二进制方式比较。


通过show collation;可以查看MySQL可用校对集。


Collation:校对集名称


Charset:对应的字符集 Id:校对集id Default:是否为对应字符集的默认校对集 Complied:是否已经编译 Sortlen`:排序的内存需求量


572248c48a8d4a08b9cc86a39e906259.png


字符集与校对集的设置


MySQL环境


输入如下命令可以查看与字符集相关的变量。


3f13536ca4414d7c938dcd2b0ac18aa3.png


数据库


在创建数据库时设定字符集和校对集的语法如下:


/

[default] character set [=] charset_name
[default] collate [=] collation_name


character set用于指定字符集,collate用于指定校对集。如果只指定一个,那么另一个将使用默认的方式。


数据表


数据表的字符集与校对集在表选项中设定,语法格式如下:


/

[default] character set [=] charset_name
[default] collate [=] collation_name


如果没有为数据表指定字符集,则自动使用数据库的字符集。


字段


字段的字符集与校对集在字段属性中设定,语法格式如下:


[character set charset_name] [collate collation_name]


如果没有为字段设定字符集与校对集,则会自动使用数据表的字符集与校对集。


总结


以上就是今天的学习内容啦~

如果有兴趣的话可以订阅专栏,持续更新呢~

咱们下期再见~


9fd9a17c843940f7afec84695fef876c.gif

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3天前
|
关系型数据库 MySQL 存储
【MySQL】——数据类型及字符集
【MySQL】——数据类型及字符集
170 0
【MySQL】——数据类型及字符集
|
7月前
|
SQL 存储 关系型数据库
【MySQL系列】SQL语句入门(创建删除操作)、字符集和数据类型详解
哈喽,大家好💓,在上一篇博客中,大致讲解了数据库的相关知识,它的作用、定义、分类等等。从本篇博客开始,将详细讲解关系型数据库MySQL的操作与使用,以及SQL语句的讲解。
|
3天前
|
存储 人工智能 搜索推荐
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
|
3天前
|
存储 人工智能 关系型数据库
详细介绍TiDB 与 MySQL 中的常用字符集及排序规则
一文理清 TiDB 与 MySQL 中的常用字符集及排序规则
176 6
|
2天前
|
存储 关系型数据库 MySQL
MySQL各字符集、排序规则的由来、用法,区别和联系
MySQL支持多种字符集和排序规则,这些在数据库设计和数据处理中起着重要作用。下面是它们的由来、用法、区别和联系: 1. **字符集(Character Set)**: - **由来**:字符集定义了数据库中可以存储的字符集合,以及这些字符在数据库中的存储方式。 - **用法**:在创建数据库或表时,可以指定所需的字符集。常见的字符集包括UTF-8、UTF-16、Latin1等。 - **区别和联系**:不同的字符集支持不同的字符范围和存储方式,选择合适的字符集可以确保数据的正确存储和处理。例如,UTF-8支持全球范围内的大多数字符,而Latin1只支持西欧语言字符集。
|
3天前
|
关系型数据库 MySQL Shell
Windows下的mysql字符集格式修改
在Windows上的MySQL 5.7.17,若安装时未设置字符集,可能导致乱码问题。本文提供了解决方案:首先,通过`mysql -uroot -p`登录并使用`show variables like '%char%';`查看当前字符集。然后,有两种修改方法:一是使用Shell命令临时修改9个相关属性为utf8;二是永久修改,在my.ini配置文件中将[mysqld]、[client]、[mysql]下的字符集改为utf8。记得重启MySQL服务以应用更改。此外,还提供了修改数据库和表字符集的SQL命令。
|
3天前
|
存储 数据可视化 关系型数据库
Mysql字符集
Mysql字符集
|
3天前
|
存储 SQL 关系型数据库
详解MySQL字符集和Collation
详解MySQL字符集和Collation
37 2
|
3天前
|
存储 关系型数据库 MySQL
【2024】新建mysql数据库,如何选择字符集和排序规则
【2024】新建mysql数据库,如何选择字符集和排序规则
191 1
|
8月前
|
存储 关系型数据库 MySQL
3.3 【MySQL】字符集和比较规则的应用
3.3 【MySQL】字符集和比较规则的应用
46 0

推荐镜像

更多