Я работал над проектом и хотел создать таблицу сообщений, аналогичную таблице сообщений WordPress, для хранения содержимого страницы.
Таким образом, я в основном скопировал таблицу wp_posts, которая является длинным текстом, однако я заметил, что при сопоставлении она имела utf8mb4_unicode_ci
Мне интересно, что это значит и для чего это нужно?
utf8mb4_unicode_ci
Поддержка полного Unicode в базах данных MySQL.
Более подробную информацию можно найти здесь https://mathiasbynens.be/notes/mysql-utf8mb4
По сути, в Unicode есть много символов, которые нельзя сохранить в таблице с помощью utf8, что приведет к потере данных.
Символы UTF-8 занимают от одного до трех байтов, но есть символы, которые могут занимать даже 4, и они не поддерживаются (utf8
— utf8mb4
).
В WordPress это изменение по сравнению с сопоставлением utf8 было причиной проблем для некоторых пользователей, в основном потому, что utf8mb4_unicode_ci
поддерживается только в MySQL 5.5.3+.
Других решений пока нет …