Символы юникода смайлики в MySQL с 4 байтами


Я должен вставить в Mysql строки, которые могут содержать символы, такие как '

1 3

1 ответ:

Вам также потребуется установить кодировку соединения в utf8mb4. Это зависит от того, как вы подключаетесь к MySQL, как это сделать. SET NAMES utf8mb4 - это независимый от API SQL-запрос для этого.

То, что MySQL называет utf8, является тупым подмножеством фактического UTF-8, охватывающим только BMP (символы 0000 через FFFF). utf8mb4 является фактическим UTF-8, который может кодировать все кодовые точки Юникода. Если ваша кодировка соединения utf8, то все данные сжимаются, хотя это подмножество UTF-8 и вы не можете отправить или получить символы выше БМП или из MySQL.