在MySQL 8.0
版本之前, 默认字符集是latin1
, 使用默认字符集的时候输入中文会出现乱码问题, 所以我们开发人员经常会将MySQL
字符集的格式修改为utf8
解决乱码问题, utf8字符集默认指向的是utf8mb3
格式编码, 在MySQL 8.0
版本开始, 默认的字符集将改为了utf8mb4
, 有效的解决了中文乱码问题
查看当前MySQL
数据库使用的字符集
show variables like "character%"; -- 或 show variables like "%char%";
MySQL 8.0版本查询默认字符集
【资料图】
MySQL 5.7版本查询默认字符集
对于MySQL 5.7
版本我们可以通过Navicat
等工具来对数据库的默认字符集进行修改, 也可以通过修改MySQL
的配置文件my.cnf
来修改默认字符集
my.cnf
文件在Linux
系统下的地址是: /etc/my.cnf 在 [mysqld] 下新增 character_set_server=utf8
修改成功之后注意要重启 MySQL, 使配置生效, 重启命令systemctl restart mysqld.service
在上面字符集列表里面有几个属性可以了解一下:
character_set_client
服务器解码请求时使用的字符集character_set_connection
服务器处理请求时会把请求字符串从character_set_client
转为character_set_connection
character_set_results
服务器向客户端返回数据时使用的字符集
在日常操作中utf8
字符集表示一个字符需要 14个字节, 但是我们常用的一些字符只需要使用 13个字节, 而字符集表示使用一个字符的最大字节长度, 长度不同占用空间大小也不同, 所以在MySQL
中定义了utf8mb3
和utf8mb4
:
utf8mb3
1~3字节utf8mb4
1~4字节
在MySQL
中, utf8通常指的是 utf8mb4
查看当前MySQL
支持的字符集可输入下列查询:
show charset; -- 或 show character set;
我们可以看到查询结果一共有四列, 分别是字符集名称, 简介, 该字符集默认排序规则, 使用该字符集最大字节数
Default collation
表示的是该字符集默认的比较规则, utf8_general_ci
是一种通用的比较规则,这里可以选择比较规则主要作用于哪种语言 在我们使用Navicat
编辑数据库的时候可以看到当前数据库使用的字符集和排序规则
utf8_croatiian_ci
就是以罗克地亚语的规则比较,utf8_czech_ci
以捷克语的规则比较utf8_danish_ci
以丹麦语规则比较...
utf8_unicode_ci和 utf8_general_ci对中英文来说没有区别 utf8_general_ci 校对速度快, 准确度较差 utf8_unicode_ci 准确度高, 但校对速度稍慢
一般来讲使用utf8_general_ci
就够了, 但是如果应用中使用到德语, 法语或者俄语, 一定要使用 utf8_unicode_ci, 因为 utf8_general_ci是一种比较老的标准 utf8_unicode_ci会更符合这些国家人们的习惯
后缀 | 英文释义 | 描述 |
---|---|---|
_ai | accent insensitive | 不区分重音 |
_as | accent sensitive | 区分重音 |
_ci | case insensitive | 不区分大小写 |
_cs | case sensitive | 区分大小写 |
_bin | binary | 以二进制的方式比较 |
-- 查看服务器的字符集和比较规则 show variables like "%_server"; -- 查看数据库的字符集和比较规则 show variables like "%_database"; -- 查看具体数据库的字符集 show create database 表名; -- 修改具体数据库的字符集 alter database 表名 default character set "utf8" collate "utf8_general_ci";
修改数据库的默认字符集和比较规则后, 原来已经创建的表的字符集和比较规则并不会改变, 需要单独的去更改
以上就是MySQL基础学习之字符集的应用的详细内容,更多关于MySQL字符集的资料请关注脚本之家其它相关文章!
关键词:
MySQL基础学习之字符集的应用
陕西开放大学举办全省开放大学成人教育综合管理平台应用工作专题培训
逸仙电商Q1营收7.65亿元 超出此前营收指引上限-当前关注
焦虑的火山引擎,不愿再等字节跳动的大模型
新兵连三个月后如何分配工作 新兵连三个月后如何分配
超星尔雅建筑CAD题库及答案
菲律宾抢夺南海岛礁,设主权浮标,警告中国:若拆除后果很严重-今日热文
东方盛虹:5月16日融券卖出金额6.18万元,占当日流出金额的0.05%
浙江多地海边现“蓝眼泪”奇观:场面惊艳
每日资讯:业绩预告前后差异大 ST鹏博士遭上交所警示
话剧、交响乐、新创古诗词歌曲……首届福州地区大学城文化艺术节学生展演开启! 世界即时看
欧冠焦点!国米首回合2-0回到主场,赛季3连杀同城死敌,米兰头号大腿继续缺阵|世界快资讯
火烧_关于火烧介绍 天天报资讯
环球通讯!桂花能在山东种植吗(桂花山东能越冬吗简介介绍)
当前短讯!宁夏移民博物馆
环球焦点!【19月租185G】和【9元180G】流量卡短期使用哪个更超值
天柱县气象台发布暴雨黄色预警信号【Ⅲ/较重】【2023-05-16】-今日快看
华体科技: 四川华体照明科技股份有限公司非公开发行限售股上市流通公告_看点
走进力星激光:国产激光切割机赢战万瓦市场-当前滚动
世界资讯:淘宝618什么时候开始预售 2023年淘宝618时间表
联想全新 ThinkPad E16 笔记本即将推出:16 英寸 16:10 大屏
川仪股份: 公司研发费用为费用化。为满足订单交付,五一节期间公司下属单位有不同程度的加班情况_世界快讯
这是一个现代版的反间计,意在借刀杀人
谦寻控股总裁赵冉:让直播间成为沟通供消两端的纽带
路德环境(688156)5月16日主力资金净买入254.42万元 环球滚动
百润股份:公司已披露的财务报告里可以查询
每日精选:舌尖消费成热潮 餐饮市场复苏势头旺
环球热资讯!甲醛释放量不合格,10张月娇床头柜被召回
杀人诛心!麦迪:如果勇士签下我 我可能会打得比普尔好一些吧_当前消息
【新视野】陆卫东任江苏省生态环境厅党组书记
世界今亮点!郑州市“双减”背景下初中英语单元整体教学观摩研讨活动举行
2023年云南丽江中考成绩查询网站:http://www.lijiang.gov.cn/ 全球速看
金星离地球多远有没有外星生命_金星离地球多远今日更新|世界焦点
小米武汉总部 35 岁以上员工被裁 90%?官方回应来了!-环球今日报
瑞星卡卡上网安全助手6.0_关于瑞星卡卡上网安全助手6.0介绍|新要闻
北京冬奥会官方电影《北京2022》群像海报发布_当前独家
相关新闻