在學習 JSP 開發並使用 MySQL 資料庫時,遇到經典的中文亂碼困擾。雖然前端頁面、JDBC 連線字串、資料庫表欄位都統一設定為 UTF-8,但寫入的中文資料卻呈現「中文數字 + 英文亂碼」的怪異現象(例如「我愛中文」變成「我愛中文ahv」)。
最初懷疑是連線參數、伺服器字符集或表結構設定錯誤,反覆檢查 characterEncoding=UTF-8、useUnicode=true、表預設字符集等均無誤。後來發現問題根源出在資料庫管理工具 EMS MySQL Manager 2007 本身對中文支援不佳。
採用 EMS MySQL Manager 2005 v3.7.7.1 搭配 GB2312 編碼環境 的組合:
若遇到純亂碼(非中文數字混雜),通常為字符集不一致導致,請檢查:
characterEncoding 參數工具選擇同樣重要,建議優先使用官方 mysql 指令列、MySQL Workbench 或 phpMyAdmin 等成熟工具進行資料維護,減少編碼轉換風險。