Я собираюсь выполнить утомительную и загруженную задачу преобразования базы данных с Latin1 на UTF-8.
В этот момент я просто хочу проверить, какие данные я сохранил в своих таблицах, поскольку это определит, какой подход я должен использовать для преобразования данных.
В частности, я хочу проверить, есть ли у меня символы UTF-8 в столбцах Latin1, что было бы лучшим способом сделать это? Если затронуто только несколько строк, я могу просто исправить это вручную.
Вариант 1. Выполните дамп MySQL и используйте Perl для поиска символов UTF-8?
Вариант 2. Использовать MySQL CHAR_LENGTH для поиска строк с многобайтовыми символами?
например SELECT name FROM clients WHERE LENGTH(name) != CHAR_LENGTH(name);
Достаточно ли этого?
В настоящее время я переключил свою клиентскую кодировку Mysql на UTF-8.