问题描述
今天使用java来操作数据库,数据库字符集,表字符集都采用gbk了,校对集也设置gbk的了,但是数据库操作的时候更改数据还是乱码,
用Navicat for Mysql查看运行结果时发现插入的汉字都出现了问题,英文正常,中文都变成了???
解决方法
原因:
链接数据库是URL的填写方式出错,应该是:
错误的代码:没有指明字符集。
con = DriverManager.getConnection("jdbc:mysql:///usersinfo", "root", "root");
正确的代码:在url中指定字符集。
con = DriverManager.getConnection("jdbc:mysql:///usersinfo?characterEncoding=gbk", "root", "root");
这样操作就不会出现乱码了。
参考博客:https://blog.csdn.net/forest_open/article/details/48195339