Java 程式插入中文前正常,資料庫安裝選 UTF-8,但入庫變亂碼。
MySQL 配置文件 `my.ini` 實際字符集未生效,仍用預設 latin1。
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
完整 `my.ini` 範例見原文(含 InnoDB、緩存、連接數等調優參數)。
SHOW VARIABLES LIKE 'character_set%';
SHOW VARIABLES LIKE 'collation%';
均應顯示 `utf8` / `utf8_general_ci`。
jdbc:mysql://host:3306/db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
資料庫層面字符集配置是中文存儲的基石,修改 `my.ini` 並重啟 MySQL 服務即可徹底解決。
出處:bianceng.cn