原因:
數據庫table和插入語句的字符編碼不匹配或者數據庫table的編碼不支持中文
解決方案:
修改table中的字符編碼為:utf-8(或gbk,gb2312)
在代碼中鏈接數據庫時,連接字符串後面加上?characterEncoding=utf8,例如jdbc:mysql://localhost:3306/db_zhu?characterEncoding=utf8
在出現插入或修改出現亂碼時,首先在mysql終端執行下插入語句,檢查是否插入正確。然後再代碼中打印下插入語句,看是否有亂碼或問號?。最看看連接字符串是否設置了characterEncoding
附:
wamp執行mysql終端時需要mysql -u root 才能有有root權限。
拓展:
http://www.cnblogs.com/hongfei/archive/2011/12/29/set-names-utf8.html