如果你用Java將中文存到MySQL,可能會注意到中文被替換成了問號。這種情況通常是由于以下幾種原因:
· 數據庫表的字符集不支持中文字符,應該將字符集設置為UTF-8或其他中文字符支持的字符集。 · 程序中沒有正確地處理Unicode編碼,導致在存儲中文字符時丟失了原始字符的信息。
在代碼中,可以將連接字符串設置為以下方式:
jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf-8
此外,確保程序中使用的字符串編碼都為UTF-8,可以在Java文件中添加以下注釋來保證:
// -*- coding: utf-8 -*-
如果還出現了中文存到MySQL變成問號的情況,可以在JDBC連接MySQL的URL字符串后面加上以下參數:
&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false&maxReconnects=10
這些參數確保了在Java程序中正確地存儲和檢索中文字符。
上一篇mysql 1137
下一篇mysql 1170錯誤