透過JDBC 將UTF-8 插入MySQL 時出現「錯誤字串值」錯誤進行故障排除
以下情況下可能會出現「錯誤字串值」錯誤:嘗試使用JDBC 將UTF-8 資料插入MySQL 資料庫。此錯誤通常表示字元編碼未正確配置。
問題說明
在您的情況下,您已使用以下參數設定JDBC 連線:
Connection conn = DriverManager.getConnection(url + dbName + "?useUnicode=true&characterEncoding=utf-8", userName, password);
此設定指定應使用Unicode字符,且字符編碼應為UTF-8。但是,錯誤訊息表示錯誤的字串值以“xF0”開頭,這是一個 4 位元組 UTF-8 字元。
解
預設情況下, MySQL的utf8編碼只允許UTF-8中3個位元組可以表示的字元。要解決此問題,您需要為 MySQL 資料庫指定 utf8mb4 編碼。此編碼支援 UTF-8 中佔用 4 個位元組的字元。
解決步驟:
ALTER TABLE table_name MODIFY COLUMN column_name VARCHAR(255) CHARACTER SET utf8mb4;
額外資訊:
以上是如何修復透過 JDBC 插入 UTF-8 資料時 MySQL「字串值不正確」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!