如何通過JDBC 接口正確將UTF-8 字符串寫入MySQL
問題:
嘗試使用JDBC 介面將UTF-8 字串插入MySQL 資料庫時,資料庫中的資料顯示不正確。
背景:
程式碼提供的程式碼片段示範了連接資料庫、建立表、插入包含 UTF-8 資料的行以及檢查插入的資料的過程。但是,輸出顯示 UTF-8 字元已損壞。
故障排除:
1。驗證 MySQL 設定編碼:
確保 MySQL 設定檔(my.cnf 或 my.ini)包含正確的字元編碼設定。使用以下命令檢查設定:
show variables like 'character%'; show variables like 'collation%';
2.修改設定檔(如有必要):
根據您的MySQL 版本,將以下行新增至設定文件中:
[mysqld] character-set-server = utf8 character-set-filesystem = utf8
OR
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] default-character-set=utf8 character-set-server=utf8
3.設定JDBC 連線:
3.設定JDBC 連線:
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&characterEncoding=UTF-8","user","passwd");
建立時,指定以下參數:
4.刪除冗餘程式碼:
query = "set character set utf8"; stat.execute(query);
根據提供的程式碼片段,建議從程式碼中刪除以下行:
預期結果:
實作這些變更後,UTF-8 字串應該正確寫入並顯示在MySQL 資料庫中。以上是如何確保透過 JDBC 正確地將 UTF-8 字串插入 MySQL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!