utf8編碼可以支援一到4位元組的字元編碼,在mysql用我們一般使用utf8編碼來處理字元型別,通常情況下都沒有問題,但遇到4位元組編碼的字元,在資料存取的時候就會有問題了。
通常我們可能會得到一個錯誤或者警告:Incorrect string value: "/xF0/x9D/x8C/x86" for column ...
Mysql 從5.5.3版本開始支援4位元組的utf8編碼,如果你的Mysql資料庫是5.5.3+,按照以下步驟就能解決這個問題,如果版本低於5.5.3,是不是可以考慮升級資料庫版本呢?
1、在修改資料庫編碼前先對資料庫備份(雖然utf8mb4相容utf8,但有備無患)
2、修改資料庫的編碼、表的編碼、列的編碼為utf8mb4
3、在Mysql資料庫配置檔案(my.ini)中加入如下設定
[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci
utf8編碼可以支援一到4位元組的字元編碼,在mysql用我們一般使用utf8編碼來處理字元型別,通常情況下都沒有問題,但遇到4位元組編碼的字元,在資料存取的時候就會有問題了。
通常我們可能會得到一個錯誤或者警告:Incorrect string value: "/xF0/x9D/x8C/x86" for column ...
Mysql 從5.5.3版本開始支援4位元組的utf8編碼,如果你的Mysql資料庫是5.5.3+,按照以下步驟就能解決這個問題,如果版本低於5.5.3,是不是可以考慮升級資料庫版本呢?
1、在修改資料庫編碼前先對資料庫備份(雖然utf8mb4相容utf8,但有備無患)
2、修改資料庫的編碼、表的編碼、列的編碼為utf8mb4
3、在Mysql資料庫配置檔案(my.ini)中加入如下設定
[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci