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-->數據庫引擎-->數據庫-->數據庫屬性-->選項-->字符集,修改為中文字符集就行了,


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM