Windows下Mysql插入中文乱码现象解决方案

MySQL在windows上中文乱码原因及解决方法

工具/原料

mysql-5.5.23-win32.msi

方法/步骤1

Step1.

首先,默认大家都有神马是码表的基本知识。MySQL里面的码表分为四个层次,服务器(server),数据库(database),表(table),栏(column)。如果在创建的时候没有设置,就会默认使用上一级的设置参数。然后还分为客户端(client),连接层(connection),结果(results)。可以通过命令show variables like 'char%'查询
Windows下Mysql插入中文乱码现象解决方案_第1张图片

Step 2.

大家在windows下安装的时候大部分教程都使用的utf-8,安装出来一般设置是如上图。在这里我们主要关注的是character_set_client,character_set_connection,character_set_results三个。那三个到底是什么用处呢。
Windows下Mysql插入中文乱码现象解决方案_第2张图片

step 3.

如上图所示,这三个分别是客户端使用的编码表,客户端和服务器中传输数据使用的编码表和服务器数据传到客户端,客户端显示时使用的编码表。而我们邮件cmd的属性可以看到cmd使用的编码是gbk(一般是根据语言环境来的,大概~),而我们客户端指定的码表是utf8,所以输入的中文字符系统会不认识而报错。
Windows下Mysql插入中文乱码现象解决方案_第3张图片

方法/步骤

解决的思路也很简单。1、cmd属性里的默认编码改成utf8。2、把传输的码表设为gbk。

我都尝试了一遍,发觉cmd对utf8的支持并不好,有兴趣的可以自己百度改cmd编码尝试一下。

第二个方法比较简单,直接输入set names gbk;就可以将上面三个属性改成gbk,然后就可以用中文字符了

你可能感兴趣的:(解决方案,修复方案)