MySQL的字符集设定

article/2025/11/9 14:37:35

我们有时在查看数据库数据时,看到一写乱码,这是由于mysql数据库字符集设定的问题,下面我就来谈谈如何正确设定字符集

在mysql中可以设定的字符集有:①服务器默认字符集 ②数据库字符集 ③表的字符集 ④列的字符集。
如果一个级别没有设置字符集,则继承上一级的字符集,即如果表没有设置字符集会自动继承数据库的字符集

mysql> show character set;                     #查看mysql支持的字符集
mysql> show variables like 'character_set%';   #查看数据库编码
+--------------------------+-----------------------------------+
| Variable_name            | Value                             |
+--------------------------+-----------------------------------+
| character_set_client     | utf8                              |  
| character_set_connection | utf8                              |
| character_set_database   | utf8                              |
| character_set_filesystem | binary                            |
| character_set_results    | utf8                              |
| character_set_server     | utf8                              |
| character_set_system     | utf8                              |
| character_sets_dir       | /usr/local/mysql/share/charsets/  |
+--------------------------+-----------------------------------+

举个简单的例子:

1、告诉服务器(准确的是告诉转换器),我给你发送给的是是什么编码?
set character_set_client = 'utf8';
2、告诉转换器,转换成什么编码?
set character_set_connection = 'utf8';
3、查询结果用什么编码?
set character_set_results = 'utf8';如果以上三者字符集都为 'utf8',可以简写成  set names 'utf8';即为
set character_set_client = 'utf8';
set character_set_connection = 'utf8';  
set character_set_results = 'utf8'; 

这里写图片描述

什么时候产生乱码

①client声明与事实不符
②results与客户端页面不符

什么时候会丢失数据

转换器的字符集connection 和 服务器字符集server  比 客户端client字符集范围小
字符编码的演变过程:ASCII --> GB2312 --> GBK --> GB18030 --> Unicode --> UTF-8

备注:
我们在设置客户端和服务器字符集的时候可以直接在mysql的 my.cnf 配置文件中设定,并将其放置在对应的标签下即可。

[client]
default-character-set = utf8   #client端字符集[mysqld]
character_set_server = utf8    #服务器字符集

MySQL表、字段、库的字符集修改及查看方法

修改数据库字符集:
ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...];   把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name [COLLATE ...]  
如:ALTER TABLE logtest CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; 只是修改表的默认字符集:
ALTER TABLE tbl_name DEFAULT CHARACTER SET character_name [COLLATE...];  
如:ALTER TABLE logtest DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 修改字段的字符集:
ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name [COLLATE ...];  
如:ALTER TABLE logtest CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci; 查看数据库编码:
SHOW CREATE DATABASE db_name;   查看表编码:
SHOW CREATE TABLE tbl_name;   查看字段编码:
SHOW FULL COLUMNS FROM tbl_name;  

http://chatgpt.dhexx.cn/article/Fe2JaAns.shtml

相关文章

MySQL字符集设置

一、 MySQL字符集设置 (1) 系统变量: – character_set_server:默认的内部操作字符集 – character_set_client:客户端来源数据使用的字符集 – character_set_connection:连接层字符集 – characte…

【Win10桌面美化】一个精致的程序员桌面是怎样的呢(花了一上午时间两种风格!)

或许大家都喜欢苹果的风格,但奈何一般买的电脑都是Win10系统,今天整理了一上午,终于打造了一个自己觉得挺不错的两种风格桌面,至少不是很差的那种。一起来看看吧~ 风格一 风格二 如果你也想拥有这样的桌面的话,评论区…

程序员的办公桌上,都出现过哪些神奇的玩意儿 ~

梦想橡皮擦,一个逗趣的互联网高级网虫。 2020 年,橡皮擦又认识了很多程序员,他们除了技术神一般的存在,办公桌上也总是出现迷一般的物品。 今天我们不聊技术,看一看我们程序员的办公桌上,都见到过哪些神奇…

程序员的桌面是什么样的?美工:那...不是我的桌面吗?

近日,有网友提问道:作为一个程序员,一直使用的都是默认Windows10桌面,最近被妹子吐槽太丑,打算换一个,不知道各位程序员的桌面都长什么样子? 于是小编整理了一些程序员桌面的内容分享给大家,把电脑桌面设置成一些自己喜欢的事物,不仅可以自己过足眼瘾,还能吸引过路的…

程序员桌面都这么秀?网友:用砖头当杯垫这样合适吗?留着吓谁

当一个程序员刚入职的时候,办公桌上基本也就一电脑、一键盘、一鼠标,最多再配个杯子。然而混迹职场多年的猿老们,办公桌上都有一些彰显自己斗宗实力的“法器”。 ​ 为什么有些程序员喜欢放一些小物品在桌上?比如这只小黄鸭&…

晒一晒程序员桌面,你惊呆了没?

点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 8:55 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2020 超神之路,很肝~中文详细注释的开源项…

程序员的桌面!

因为灵感随时可以从混乱的桌面获得,并且看似混乱的背后,其实自有一套混乱制造者的逻辑,并不影响他们执行工作的效率。 爱因斯坦、马克吐温、扎克伯格不幸躺枪…… 爱因斯坦 马克吐温 马克扎克伯格,脸书创始人兼CEO 然而到了互联网…

这位程序员的桌面是我见过最漂亮的了

点击上方“芋道源码”,选择“设为星标” 做积极的人,而不是积极废人! 源码精品专栏 原创 | Java 2019 超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析消息中间件 RocketMQ 源码解析数…

程序员装B小技巧——管理你的桌面

程序员装B小技巧——管理你的桌面 引言 想不想拥有一个和下方截图一样简单快捷的桌面?随着工作学习的时间推移,我们电脑里面的各种软件和文档日渐增多,导致我们的桌面变得杂乱且不美观。身为一个程序员怎么能容忍自己的桌面如此&#xff0c…

Hey~程序员,你的桌面风格该换了

最近,要做的项目越来越多,桌面上几乎全都是这样那样的文件,整个桌面看起来非常的乱。对于程序员来说,凌乱的桌面会影响我门做项目的速度,程序员就是要快才行,不快怎么能高效率呢? 正式介绍前&a…

程序员桌面

转载程序员桌面! 1、三思后再写代码!!! 2、从世界上搜索喜欢你的人!!! 其他分辨率下载: 1920x10801920x12002560x14402560x1600 3、代码没写完,哪里有脸睡觉&#xff…

晒一波程序员的桌面,逼格超级高

之前不小心秀了下桌面 没想到大家都这么热情的回复了 讲真,看完我觉得太亲切了! 因为看到了同款桌面、同款键盘 还有同款游戏手柄.... 小姐姐是在用sublime写lua开发unity游戏吗? Bug写到一半烦躁的时候就需要降降温 这么暖心的大白作为桌面&…

晒一波程序员的桌面,逼格超级高!

话不多说,小编带大家来看看程序员的桌面~ 这场面,略微有点心酸,十几人围坐一张方桌,几百人挤在百平米来大的地方,桌面上除了电脑放着杂乱的矿泉水瓶,和交错在一起的各种乱线。 还是来看看高逼格的的桌面吧~程序员的正常水平! 某程序员表示:别毁我程序员大军形象,给你…

dp光纤线与hdmi光纤线哪个比较好?

Dp光纤很多人都不能理解DP是什么意思,它就是高清数字显示接口,后面加上光纤两个字就会形成不同的产品了,和HDMI比较起来DP的工作貌似责任更加的重大,如果理解DP光纤责任重大的意思呢,可以看DP光纤的用途在哪&#xff0…

hdmi接口线_HDMI接口不可以传输音频吗?带你快速了解HDMI接口

DTECH帝特,传递精彩画面,分享快乐时光! HDMI接口不可以传输音频?很多用户认为,HDMI仅仅只是视频接口,仅支持图像信号传输,不支持音频信号。 一般我们通过HDMI数据线将电脑与液晶电视连接后&…

hdmi接口线_网友很困惑:连接显示器,DP光纤线和HDMI光纤线,究竟哪个更好?...

在连接显示器时,有些网友感到非常困惑,DP光纤线和HDMI光纤线,到底用哪种连接才好? 首先考虑您使用的显示器是否支持HDMI接口或DP接口,并且不同设备支持的产品也有所不同。目前大多数的影音设备都是HDMI接口&#xff0c…

hdmi接口线_学会这几招,从此购买HDMI高清线不再被坑

冬至 随着社会的高速发展,全球的电视市场一直处于持续增长的状态,尤其是4K电视的势头更是凶猛。其超清的显示器规格,给观众们提供了更好的观影体验,4K的话题也一直是行业的热点。对于一些外行人来说,想要观影4K影视&am…

hdmi接口线_HDMI高清线不能随便买,这五点要记住

显示器数据电缆目前主要有三种,HDMI连接线、VGA连接线以及DVI连接线。现在基本上都会选择有HDMI接口(高清接口)的显示器,那么选择一条好的HDMI线就显得非常的重要。 HDMI接口版本 要选择HDMI连接线,首先要看HDMI的接口的版本号。HDMI接口版本…

HDMI介绍及硬件实现原理

HDMI介绍及硬件实现原理 1. HDMI接口 HDMI是新一代多媒体接口标准。全称为(High-Definition Multimedia Interface),高清晰多媒体接口。HDMI能够同时传输视频和音频,简化了设备的接口和连线。同时,提供了更高的数据传输带宽,可以传输无压缩…

华光昱能针对工程光纤布线的痛点?常见问题及解决方案

1. 工程布线常见问题及解决方案 工程项目布线,普遍存在以下几大难点: 一、HDMI等接口的一体化有源光纤线其接头的长度较长,碰到小管径,拐弯多,等诸多穿管问题,的确不容易布线施工。 二、光纤光缆容易断纤&…