java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\xBD\xF0\x9F…' 問題彙總

1 插入的字段超過text 的長度

TINYTEXT: 256 bytes
TEXT: 65,535 bytes
MEDIUMTEXT: 16,777,215 bytes
LONGTEXT: 4,294,967,295 bytes

解決辦法:找出插入的表中的最長的字段。判斷是否存在越界的問題。

2 編碼問題

UTF-8是可變長度編碼。 對於UTF-8,這意味着存儲一個代碼點需要1-4個字節。 但是,MySQL的編碼稱爲“ utf8”(別名爲“ utf8mb3”),每個代碼點最多隻能存儲三個字節。因此,字符集“ utf8” /“ utf8mb3”不能存儲所有Unicode代碼點:它僅支持範圍0x000到0xFFFF。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章