Windows下修改mysql编码为utf-8

文章引用自http://blog.csdn.net/hzw19920329/article/details/53391421
本文章为个人的学习备忘

今天遇到个很头疼的问题,在向MySql数据库插入中文的时候,总是报下面的错误:

java.sql.SQLException: Incorrect string value: '\xE5\xB8\x8C\xE8\xB4\x9D...' for column 'nickName' at row 1

    特此查看资料说是数据库的编码字符集不是utf-8导致的,但是从网上找了好多修改数据编码的方法都不太奏效,下面是我自己的修改方法,在此做个总结:

    (1):进入mysql的安装目录,找到my-default.ini或者my.ini配置文件,你可以将my-default.ini修改成my.ini,影响不大的;

    (2):我的my.ini只有一个[mysqld]标签,其他均处于注释状态,我们在my.ini里面做两件事

在[mysqld]标签下添加:character-set-server=utf8

增加一个[client]标签,并且在[client]标签下添加:default-character-set=utf8

    (3):到任务列表中重启mysql服务;

    (4):进入dos界面,登录数据库,输入命令:show variables like "%char%";如果dos界面出现的下图所示结果,说明你修改mysql编码成功啦!

image.png

image
    (5):重启mysql服务;

    (6):如果这时候你向数据库中插入中文字符还是会出现乱码或者还是会出现java.sql.SQLException: Incorrect string value: '\xE5\xB8\x8C\xE8\xB4\x9D...' for column 'nickName' at row 1异常的话,你还需要尝试下面几个步骤:

    (7):重新创建数据库(我使用的是Navicat创建的),将数据库的字符集设置成:utf8 -- UTF-8 Unicode,将排序规则设置成:utf8_unicode_ci或者utf8_general_ci都可以;
image
    (8):如果这时候上面的异常以及乱码问题还没解决的话,那么我们还需要修改连接数据库的字符集啦,我把我连接mysql的url贴出来:

[java] view plaincopy

<embed id="ZeroClipboardMovie_1" src="https://csdnimg.cn/public/highlighter/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="16" height="16" name="ZeroClipboardMovie_1" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=1&width=16&height=16" wmode="transparent" style="user-select: text !important; animation-duration: 0.001s; animation-name: playerInserted; box-sizing: border-box;">

  1. public static final String DRIVER = "com.mysql.jdbc.Driver";

  2. public static final String DATABASENAME = "wangyimusic";

  3. public static final String URL = "jdbc:mysql://localhost:3306/"+DATABASENAME+"?useunicode=true&characterEncoding=utf8";

  4. public static final String USERNAME = "root";

  5. public static final String PASSWORD = "123456";

    好了,上面就是我解决mysql数据库编码问题的方法了,如果你遇到此类问题,可以尝试下,还是不行的话,欢迎留言探讨,转载请注明出处,谢谢!!
    
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,502评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,623评论 18 399
  • 在你愤怒失望到极点时,都要忍住不说太伤人的话,因为你要知道,情绪总会平复,但伤人的话却没办法收回!
    MiMiMangMangxy阅读 178评论 0 0
  • 小时候很不喜欢吃面,因为总有挑不完的葱和夹在面里的口味很重的佐料,每次我妈说这顿吃面我的内心都是痛苦的。高中有个政...
    6df0b98cca64阅读 482评论 0 0
  • 转眼已经是2017年了,回望过去的一年还是过得很快的。过节期间各种应酬不断,为了休息就没有更新文章。今天兴趣很浓,...
    画苑阅读 983评论 0 6

友情链接更多精彩内容