MySQL中文乱码具体解决方案

以下的文章主要介绍的是MySQL中文乱码的解决,MySQL中文乱码在实际的应用中是经常出现,导致实际的运行中产生很多的不便,以下的文章就是介绍MySQL中文乱码的解决方案。望你能有所收获。

成都创新互联企业建站,10年网站建设经验,专注于网站建设技术,精于网页设计,有多年建站和网站代运营经验,设计师为客户打造网络企业风格,提供周到的建站售前咨询和贴心的售后服务。对于网站制作、做网站中不同领域进行深入了解和探索,创新互联在网站建设中充分了解客户行业的需求,以灵动的思维在网页中充分展现,通过对客户行业精准市场调研,为客户提供的解决方案。

原来常常在群里看到MySQL的乱码问题,但是由于本人一直在用oracle和sql server所以没多在乎,昨天用了用MySQL结果就遇到了传说中的乱码…..。现在我们来讲讲MySQL的乱码问题。首先你进入的你MySQL

用show variables查看

这里可以查看到你的字符集,character_set_server是服务器编码。现在我们默认的是latin1要改变服务器的编码必须重新启动服务器,我们先用MySQLadmin –uroot shutdown关闭服务器,然后MySQLd –C GBK启动服务器 –C是character_set_server的一个简写(可以也可以写成MySQLd –character_set_server gbk).这样修改以后我们再进入MySQL查看就会显示:

这样我们就把服务器和数据库的编码改为了GBK。

现在我们就可以插入中文字符串了,但是为什么有时间还是会显示

 
 
 
  1. Exception in thread "main" com.MySQL.jdbc.MySQLDataTruncation: Data truncation: Data too long for column 'name' at row 1

MySQL中文乱码解决中出现上述情况,这是因为你只是修改了MySQL的服务器的字符编码,并没有修改已经有数据库的编码,这时候你需要手动的把data目录下的数据库中的db.opt中的编码改为

 
 
 
  1. default-character-set=gbk
  2. default-collation=gbk_chinese_ci

这样修改以后你在重启服务器就可以插入中文了。

但是这时候还有个问题就是在你应用程序当中显示的是中文字符,但是在命令窗口还是乱码。

这时候你注意我们上面图中的character_set_client字符还是latin1当然显示的是乱码咯哟。所以你进入MySQL客户端程序的时候因该把客户端默认的编码改为gbk才能显示正常。

你可以在MySQL里修改,也可以在登陆的时候MySQL –uroot –default-character-set=gbk修改

如此以来就解决了MySQL中文乱码解决了。

网站栏目:MySQL中文乱码具体解决方案
文章路径:http://www.hantingmc.com/qtweb/news15/308615.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联