关于dbunit报Duplicate entry ‘????’ for key ‘xxx’错误的问题

关于dbunit报Duplicate entry ‘????’ for key ‘xxx’错误的问题

最近在Linux下跑一个原来在window下能正常运行的程序时,在进行单元测试时dbunit在将xml中数据导入数据库的过程中报:Duplicate entry ‘????’ for key ‘xxx’错误,我最初怀疑是文件编码的问题,但是经过一翻检查发再并非是xml文件的编码有问题,而是mysql数据库的编码出了问明。过去在windows下安装mysql时会有一个完整的配置向导,其中一个环节是配置mysql的编码,一般我们会选择“对国际化进行最好支持”那一项。而在我的ubuntu下,由于是使用update center直接安装,安装过程中并没有提示对mysql的编码进行配置,这样安装完成的mysql的某些编码配置项就不是utf8了,我们可以通过SHOW VARIABLES LIKE ‘character%’;命令来查看所有的编码设置,你会发现有很多项都不是utf8编码的。如此一来,解决方法就很简单了,只需要打开/etc/mysql/my.cnf文件,在 client, mysql, mysqld,mysqld_safe段落里均加上default-character-set=utf8即可:

[client]

default-character-set=utf8

[mysql]


default-character-set=utf8

[mysqld]


default-character-set=utf8

[mysqld_safe]

default-character-set=utf8

修改完成后重起mysql,依然用SHOW VARIABLES LIKE ‘character%’;检查字符编码,如果所有字符编码均为utf8(character_set_filesystem
除外),就说明所有编码都以改为了utf8了。完成了这一工作后,drop掉原来的数据库,重新执行单元测试,运行通过。

转载于:https://my.oschina.net/pangzhuzhu/blog/327023

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109703.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ios touchesBegan不触发

    ios touchesBegan不触发iostouchesBegan不触发今天简单写了一个touchesBegan,发现无法触发,点击无效,网上找了半天没有效果。最终发现问题是uiimageview需要开启交互:

    2022年7月25日
    25
  • javascript倒置再次被否定作用

    javascript倒置再次被否定作用

    2022年1月11日
    44
  • SD卡与MMC卡的区别

    SD卡与MMC卡的区别本文译至:http://home.impress.co.jp/magazine/dosvpr/q-a/0108/qa0108_2.htm

    2022年6月12日
    42
  • PyCharm设置Python版本

    PyCharm设置Python版本PyCharm默认会使用虚拟的Python解释器,即使没有安装也能够运行Python代码,但有强迫症的程序员一定不能忍受Project中存在这么多的文件目录。设置Python版本File->Settings->Project->ProjectInterpreter,设置本地安装的Python解释器版本创建Python工程创建工程时,选择Existin…

    2022年5月8日
    78
  • linux的解压zip文件,linux解压zip文件命令是什么

    linux的解压zip文件,linux解压zip文件命令是什么linux解压zip文件命令是什么发布时间:2020-04-2311:02:45来源:亿速云阅读:162作者:小新今天小编给大家分享的是linux解压zip文件命令是什么,相信很多人都不太了解,为了让大家更加了解linux解压zip文件命令,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。Linuxunzip命令用于解压缩zip文件,unzip为.zip压缩文件的解压缩程序。语法u…

    2022年6月7日
    27
  • CompareNoCase

    CompareNoCaseCString::CompareNoCaseintCompareNoCase(LPCTSTRlpsz)const;返回值:如果字符串是一样的(不区分大小写)则返回零值;如果CString对象

    2022年7月4日
    22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号