|
|||
|
Конвертация БД из Win-1251 в UTF8Конвертацию БД из Win-1251 в UTF8 можно произвести разными способами, но самый быстрый и простой - использование SQL-запроса, приведенного ниже. ALTER TABLE `db_name`.`table_name` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; При помощи этого запроса, можно конвертировать таблицу базы данных в любую, доступную в MySQL кодировку. Но что делать, если таблиц 100, 200 или больше, и все таблицы необходимо перекодировать в UTF8 из Win-1251? Для решения этой проблемы, можно отправить в MySQL запрос, который сгенерирует необходимые SQL-запросы для всех таблиц БД. При использовании PHPMyAdmin останется только скопировать результаты и запустить их как SQL-запрос: SELECT CONCAT( 'ALTER TABLE `', t.`TABLE_SCHEMA` , '`.`', t.`TABLE_NAME` , '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;' ) AS sqlcode FROM `information_schema`.`TABLES` t WHERE 1 AND t.`TABLE_SCHEMA` = 'My_DB_for_convert' ORDER BY 1 LIMIT 0 , 90 Этот запрос будет работать в MySQL версии 5 и выше. My_DB_for_convert - следует заменить на имя БД, таблицы в которой необходимо конвертировать в UTF-8. utf8_general_ci или utf8_unicode_ciutf8_general_ci и utf8_unicode_ci отличаются только скоростью работы и порядком сортировки. Поскольку utf8_general_ci работает быстрее - это и есть предпочтительный выбор. Подробнее, про отличия utf8_general_ci и utf8_unicode_ci можно прочитать в Опубликовано: 2012/06/10
HTML-код ссылки на эту страницу:
<a href="https://petrenco.com/mysql.php?txt=141" target="_blank">Конвертация БД из Win-1251 в UTF8</a> 33666
Добавить комментарий
|