mysql 编码种类_MySQL 编码

article/2025/10/23 5:36:04

编码的种类

SHOW VBRIABLES LIKE '%character%';

9f8ee3e317372cd97811e2ce8381ecec.png

1) character_set_client : MySQL Server 假定client传输数据过来的时候的编码

2) character_set_connection: Server收到SQL语句时,将其转换成的编码

3) character_set_results: Server在返回数据给客户端时,会将数据转成这个编码

4) character_set_system: 元数据编码(表名, 列名等)

5) character_set_server, character_set_database, character_set_table, character_set_column: MySQL默认的 服务器/数据库/表/列 编码, 优先级由低到高, 就是表编码可覆盖库编码,列编码可覆盖表编码

校对集种类

01019b9d7cc5e370a3d3d3260982c062.png

collation是字符的排序规则,就是字符之间比较大小的规则,例如utf8_general_ci表示的就是按照utf8编码且忽略大小写来排序,MySQL在排序时会将两个比较字符先转化为相同的编码,如果出现编码不兼容,则会抛出错误.

关于 SET NAMES 和 SET CHARACTER SET

SET NAMES 'ENCODING' 是设置以上编码的命令,它影响的编码包括:character_set_client, character_set_connection, character_set_results, collation_connection

SET CHARACTER SET 'ENCODING' 影响的编码包括:character_set_client, character_set_results

简而言之 SET NAMES 会影响Server的编码和解码, 而 SET CHARACTER SET 只会影响Server的解码

如果说我们使用latin1打开一个连接,然后将set names utf8,则会出现问题,因为这会使得服务器认为客户端传入数据是utf8编码,而实际上使用的确实latin1

所以最好的解决策略是同意所有的解码和编码规则

下面是MySQL编码修改的方法

编辑/etc/mysql/my.cnf

在[client]节点下添加

default-character-set=utf8

在[mysqld]节点下添加

character-set-server=utf8

collation-server=utf8_general_ci

重启mysql服务

service mysql restart 即可

进入mysql,查看编码

show variables like "character%";

可以看到已经改好

c607ec583a9abbb1cd992b549e7eb3e0.png


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

相关文章

c++ 连接mysql数据库

使用vs2019对window11中的数据库进行连接 1. 配置连接环境 首先需要把mysql中的头文件和库文件放入到c项目工程中 1.打开安装MySQL的目录,在windows系统中如果是默认路径,应该和我的是一样的:C:\Program Files\MySQL\MySQL Server 8.0 2.找…

Mysql 数据库(一)—— 初识 Mysql

文章目录 Mysql 数据库(一)—— 初识 Mysql一、数据库1. 什么是数据库?2.数据库与数据结构3.数据库软件4.关于Mysql5.Mysql 学习内容6.Mysql 的安装 二、Mysql 详细操作1.学习 SQL 语句2.关于数据库的操作:(1) 查看数据库(2) 创建…

MySQL数据库编码

1 MySQL数据库编码解析 登录MySQL之后,输入如下命令来查询数据库编码, show variables like "char%";可得到如下查询结果, 查询结果所含信息如下, ①character_set_client:utf8,表示MySQL的…

编程语言的类型

解释型语言和编译型语言 解释型语言是把源代码的每一条语句在运行时通过解释器编译成机器语言(按语句编译,边说边翻译) 编译型语言是将整个源程序代码一次性编译成机器码,机器最直接读这个机器码文件(一次性编译&…

编程语言发展简史

编程语言发展简史 一、编程的起源二、第一代计算机语言——机器语言三、第二代计算机语言——汇编语言四、第三代计算机语言——高级语言2022年4月[TIOBE编程排行榜](https://www.tiobe.com/tiobe-index/)高级语言的分类:1.解释型和编译型2.面向过程和面向对象 一、…

常见的十几种编程语言介绍

作为一名小白,在刚接触编程的时候,常常不了解这些编程语言具体有什么用途,或者说不知道应该学习哪种语言能实现自己想要从事的IT领域方向,于是,结合自身学习经验以及资料查找,我整理了一些常见的编程语言的介绍,帮助大家认识了解编程语言的特点、用途,从而快速明确学习…

学生的第一门编程语言应该是什么?

“学生第一次开始学习计算机科学(computer science,CS)时,应该从哪种编程语言开始学习?”这一问题一直让教育工作者备受困扰。来自密歇根大学的计算机科学教授 Mark Guzdial 也对此进行了大量思考与研究,然而其近期发表在《ACM 通讯》上的一…

编程语言是怎么发展的?

说到编程语言,我们通常会想到JAVA、C#之类的。不知道你有没有好奇过,编程语言到底是怎么发展而来的。别急,听小编慢慢道来。 编程语言的定义为计算机和人都能识别的语言,通过编程语言,程序员将指令发给计算机&#xf…

如果编程语言是一门武功绝学

学习编程与武功绝学 武侠小说中,各路侠客绿林好汉都是从基本功开始一招一式学起,掌握了足够多的招式后,加之勤学苦练,量变引起质变,会有一天打开任督二脉顿悟出这些招式背后的哲学逻辑,成为一代宗师。在编程的学习过程中,我们何尝不是从一招一式的函数、语法、特性等学…

什么是 Python 编程语言?

Python:是世界上最流行的解释型编程语言之一。Python 由 Guido van Rossum 设计,作为“ABC”编程语言的继承者,于 1991 年首次发布。它是一种高级通用语言,其设计理念是通过使用缩进来强调代码的可读性。Python 的语言结构旨在帮助…

世界上到底有多少种编程语言

今天在找选题的时候,发现一篇《世界上最不流行的编程语言》。程序员常常讨论世界上最流行的编程语言有哪些,各种编程语言排行榜也会定时发布出来,例如Python、JavaScript、Java这些耳熟能详,排在各大榜单前列的流行编程语言&#…

Python 编程语言

💂 个人网站: 海拥 —— 一个乐于分享技术与快乐的博主🤟 版权: 本文由【海拥】原创、在CSDN首发、需要转载请联系博主💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦💅 想寻找共同摸鱼的小伙伴,…

python是一种编程语言吗?,python语言是编程语言吗

python语言是什么? Python是一种计算机程序设计语言,你可能已经听说过很多流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网页编程的JavaScript等,Python…

第一门编程语言,我应该学什么?

作者 | Daniel Bastos 译者 | 弯月 责编 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 软件工程师问我最多的一个问题就是,第一门编程语言应该学什么。这可能是开发人员学习过程中最大的困惑,以至于许多人觉得在得到百分百正确的…

第一门编程语言选谁?

Are You Ready? Go! ——第一门编程语言选谁? 金旭亮 说明: 这篇文章是专门针对大学低年级学生(和其他软件开发初学者)写的,如果你己经是研究生或本科高年级学生,请将这篇文章转发给你的师弟或师妹&…

输入电阻定义

MOSFET的栅极是绝缘的,所以 i G ≈ 0 i_G \approx 0 iG​≈0,输入阻抗很高 定义:对不含独立电源(可以含受控源)的端口网络,定义端口的电压和电流之比为该端口网络的输入电阻(入端电阻&#xf…

关于电路中输入阻抗和输出阻抗大小的讨论

前言 很多同学搞不清楚为什么说输入、输出阻抗大小是大好还是小好,在这里我要简单概述一下。对于输入阻抗来说,输入阻抗越大越好,因为这样落到放大器上的电压就越大,更接近信号源电压(信号源内阻索取的就越小&#xf…

阻抗匹配的简单理解

阿尔伯特爱因斯坦声称:“科学的大多数基本思想本质上都很简单,并且通常可以用每个人都能理解的语言来表达。” 我不确定 21 世纪的物理学是否仍然如此(试着找一个能简单解释超弦理论的人)。尽管如此,这也是我对本专栏的…

如何用示波器测量输出阻抗

本文介绍了测量函数信号发生器、放大器或其他电路的输出阻抗的方法。这种方法适用于频率较低的场景,并不适应于所有的电路类型。本实验中用低频(1k Hz)的正弦波测量。 本文以汉泰的 DSO8060 为例,测量其输出阻抗,该示波器带有信号…

什么是阻抗?影响阻抗的因素有哪些?

问 什么是阻抗? 答 在具有电阻、电感和电容的电路里,对电路中的电流所起的阻碍作用叫做阻抗。 问 什么是阻抗匹配? 答 阻抗匹配是指信号源或者传输线跟负载之间达到一种适合的搭配。阻抗匹配主要有两点作用,调整负载功率和…