У меня есть «старая» база данных (в utf 8), где я читаю и пишу с помощью JDBC. Теперь я также должен иметь возможность хранить смайлики в столбце моей таблицы. Я изменил кодировку задействованных столбцов на utf8mb4:
ALTER TABLE
myTable
CHANGE column_name column_name
longtext
CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci
NOT NULL;
Однако, когда я пытаюсь вставить смайлик в этот столбец, я получаю известную ошибку
java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\x8D\xF0\x9F...'
Должен ли я преобразовать всю базу данных или я делаю что-то не так?
SHOW CREATE TABLE myTable
-- я не буду проверять правильность объявления столбца. - person Rick James   schedule 17.08.2019