0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MySQL字符集的设置修改和排序规则

汽车玩家 来源:数据库的那些事 作者:数据库的那些事 2020-04-16 17:10 次阅读

1、字符集概述

大家都知道,计算机只能识别二进制码,为了让计算机能处理文字,人们给每个文字进行编码,这个编码就是计算机字符集的由来。

字符集是多个字符的集合,而字符是各种文字、符号和编码的总称。MySQL提供了字符集支持,可以使用各种字符集存储数据。可以在服务器,数据库,表和列级别指定字符集。

MySQL字符集的设置修改和排序规则

MySQL常用字符集

MySQL字符集的设置修改和排序规则

MySQL排序规则后缀

2、MySQL的字符集和排序规则

字符集:用来定义MySQL存储字符串的方式

排序规则:用来定义比较字符串的方式。

字符集和排序规则是一对多的关系。

在同一服务器,同一数据库甚至同一表中混合使用具有不同字符集或排序规则的字符串

3、MySQL字符集的设置

服务器字符集和排序规则

服务器字符集和排序规则,可以在MySQL的配置文件汇中设置。

在my.cnf中设置

[mysql]
character_set_server=utf8

查询当前服务器的字符集和排序规则

show variables like 'character_set_server';
show variables like 'collation_server';

数据库字符集和排序规则

数据库字符集和排序规则可以在创建数据库的时候指定,也可以在创建完数据库后通过‘alter database’命令进行修改。如果数据库里已经存在数据,则以前的数据还是按照久的字符集进行存储,新数据按照新的字符集存放。

设置数据库字符集和排序规则

MySQL字符集的设置修改和排序规则

设置数据库字符集和排序规则

查询当前数据库的字符集和排序规则

show variables like 'character_set_database';
show variables like 'collation_ database';

MySQL设置数据库字符集和排序规则的规则如下:

如果指定了字符集和排序规则,则使用指定的字符集和排序规则

如果指定了字符集未指定排序规则,则使用指定字符集其默认排序规则

如果指定了排序规则但未指定字符集,则使用与排序规则相关的字符集

如果未指定字符集和排序规则,则使用服务器字符集和服务器排序规则。

表字符集和排序规则

表的字符集和排序规则在创建表的时候指定,也可以通过alter table命令进行修改,如果表中已有数据,修改字符集对原有数据没有影响。

设置表字符集和排序规则

MySQL字符集的设置修改和排序规则

设置表字符集和排序规则

查询当前表的字符集和排序规则

show create table

MySQL设置表字符集和排序规则的规则如下:

如果指定了字符集和排序规则,则使用指定的字符集和排序规则

如果指定了字符集未指定排序规则,则使用指定字符集其默认排序规则

如果指定了排序规则但未指定字符集,则使用与排序规则相关的字符集

如果未指定字符集和排序规则,则使用数据库字符集和服务器排序规则。

列字符集和排序规则

每个“ 字符 ”列(即,类型列 CHAR, VARCHAR中, TEXT类型)都有字符集和列排序规则。列定义语法,CREATE TABLE并 ALTER TABLE具有用于指定列字符集和排序规则的可选子句:

MySQL字符集的设置修改和排序规则

设置列字符集和排序规则

查询当前列的字符集和排序规则

show create table

MySQL设置列字符集和排序规则的规则如下:

如果指定了字符集和排序规则,则使用指定的字符集和排序规则

如果指定了字符集未指定排序规则,则使用指定字符集其默认排序规则

如果指定了排序规则但未指定字符集,则使用与排序规则相关的字符集

如果未指定字符集和排序规则,则使用表字符集和服务器排序规则。

4、MySQL字符集修改

修改带有历史数据的数据库的字符集,步骤如下:

导出表结构

手工修改导出文件的字符集为新的字符集

导出所有记录

修改数据文件的字符集

创建新的数据库

利用导出的文件建表

利用导出的文件导入数据

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据库
    +关注

    关注

    7

    文章

    3750

    浏览量

    64219
  • MySQL
    +关注

    关注

    1

    文章

    795

    浏览量

    26391
收藏 人收藏

    评论

    相关推荐

    网关的设置规则

    网关的设置规则涉及多个方面,包括硬件安装、网络连接、基本配置、高级配置以及安全设置等。以下是一篇关于网关设置规则的详细指南,旨在帮助用户正确
    的头像 发表于 09-30 11:48 943次阅读

    AD9元器件间距规则如何设置

    在Altium Designer 9(简称AD9)中设置元器件间距规则,主要是为了确保PCB(Printed Circuit Board,印刷电路板)上的元器件之间保持适当的距离,以避免短路、干扰或
    的头像 发表于 09-02 15:26 2156次阅读

    Jtti:MySQL初始化操作如何设置root密码

    MySQL初始化时,可以通过以下步骤设置root密码: 打开命令行工具,使用以下命令启动MySQL服务:   sudo service mysql start   使用以下命令登录
    的头像 发表于 08-08 16:45 287次阅读

    华纳云:如何修改MySQL的默认端口

    更改MySQL的默认端口。 理解MySQL配置文件 MySQL的配置文件是控制服务器设置的关键。在不同的操作系统中,这个文件可能位于不同的位置: Linux: /etc/
    的头像 发表于 07-22 14:56 261次阅读
    华纳云:如何<b class='flag-5'>修改</b><b class='flag-5'>MySQL</b>的默认端口

    MySQL忘记root密码解决方案

    mysql登录密码为password()算法加密,解密成本太高,以下为通用方案; 原理:mysql提供了特殊启动方式,即跳过权限表验证,启动后,登录不需要提供密码; 登录后,即可修改
    的头像 发表于 04-23 16:08 625次阅读

    Altium Designer电气规则设置后无报错原因解析

    可是很多时候我们明明是在规则编辑器里面设置规则的,为什么在我们规则之外的时候它竟然不报错呢?是哪里设置不对吗?
    发表于 03-28 09:35 1728次阅读
    Altium Designer电气<b class='flag-5'>规则</b><b class='flag-5'>设置</b>后无报错原因解析

    pcb走线的规则设置方法介绍

    随着电子产品的迅速发展,PCB(Printed Circuit Board)在电子设计中扮演着重要的角色。设计PCB走线时,合理设置规则是确保电路在安全、稳定、高效工作的基础。本文将详细介绍PCB走
    的头像 发表于 01-09 10:45 2332次阅读

    mysql怎么新建一个数据库

    : ``` CREATE DATABASE database_name [CHARACTER SET charset_name] [COLLATE collation_name]; ``` `CHARACTER SET`参数用于指定数据库的字符集,`COLLATE`参数用于指定数据库的
    的头像 发表于 12-28 10:01 832次阅读

    ad覆铜规则怎么设置距离

    AD覆铜规则是指在PCB板上通过化学方法将铜层覆盖在绝缘层上,用于实现电路连接和信号传输。距离是指AD覆铜之间的间距,通常也称为覆铜间距。合理的AD覆铜规则设置能够保证电路的正常工作和可靠性,同时也
    的头像 发表于 12-20 10:46 4393次阅读

    oracle和mysql语法区别大吗

    : Oracle支持更多的数据类型,包括数值型、字符型、日期型、二进制型、大型对象(LOB)等。而MySQL的数据类型相对较少,例如,MySQL不支持日期时间戳(TIMESTAMP)以外的任何日期时间类型
    的头像 发表于 12-06 10:26 1074次阅读

    MySQL替换字符串函数REPLACE

    MySQL是目前非常流行的开源数据库管理系统之一,它具有强大的功能和性能。其中之一的字符串函数REPLACE,可以用于替换字符串中的指定字符字符
    的头像 发表于 11-30 10:44 1423次阅读

    mysql字符串包含某个字符

    MySQL是一种开源的关系型数据库管理系统,被广泛用于构建Web应用程序和其他大型数据驱动的应用。在进行MySQL数据库查询时,经常需要使用字符串包含操作,即判断一个字符串是否包含另一
    的头像 发表于 11-16 14:52 3553次阅读

    mysql数据库默认字符编码是什么

    编码是一种将字符映射到二进制数据的方式。它定义了字符在计算机中的存储和传输方式,决定了计算机如何解读和显示不同的字符。 为什么需要字符编码: 由于不同国家和地区有不同的
    的头像 发表于 11-16 14:50 1496次阅读

    mysql8.0默认字符集是什么

    支持存储和处理 Unicode 字符,包括 emoji 表情符号。 字符集是用于定义数据库中存储的字符编码规则的集合。它们指定了可以在数据库中使用哪些
    的头像 发表于 11-16 14:48 1737次阅读

    mysql如何实现主从复制的具体流程

    。 配置主服务器 (1) 在主服务器上修改MySQL的配置文件my.cnf,打开二进制日志功能,将参数 log_bin 设置为ON,并指定二进制日志文件的名称和路径,例如设置 log_
    的头像 发表于 11-16 14:10 730次阅读