sqlserver 存入DB中的中文乱码
在war包中的appliation.properties中,配置的数据库连接做了修改,也不知道当初为什么这么改
导致存入DB中的中文是???
testaaa.jdbc.type=mssql
testaaa.jdbc.driver=com.inet.tds.TdsDriver
#UAT
testaaa.jdbc.url=jdbc:xx:xxxx:1433?database=xxx
testaaa.jdbc.username=xxx
testaaa.jdbc.password=xxxxx
#
##PROD
#testaaa.jdbc.url=jdbc:xx:xxxx:1433?database=xxx&useUnicode=true&characterEncoding=UTF-8
#testaaa.jdbc.username=xxx
#testaaa.jdbc.password=xxxxx
解决是将加黑部分删除即可。
关于原因吗,之前新增过一个数据库,应该没有人关注过DB的默认字符编码,测试的时候用的是Chinese_PRC_CI_AS字符编码的DB
我只见过mysql链接的时候需要配置字符编码,oracel和sqlserver没有见过这样的链接配置
上线的时候,新DB可能不是,
然后开发发现了问题,就在数据库连接上面增加了上面加黑部分
后来不知道是否有人看到了默认字符集的问题,又在默认字符集的基础上改成了中文Chinese_PRC_CI_AS;
而此时db连接已经更改过,就又出现了乱码的问题。
SSMS-->数据库引擎-->数据库-->数据库属性-->选项-->字符集,修改为中文字符集就行了,
------------------------- A little Progress a day makes you a big success... ----------------------------