Вопрос

In /etc/my.cnf the following has been added


character-set-server=utf8
collation-server=utf8_general_ci

Но для базы данных и таблиц, созданных перед добавлением выше, как преобразовать базу данных и таблиц в UTF8 с настройками сопоставления

Это было полезно?

Решение

Ну, набор символов базы данных и набор символов таблицы - это просто по умолчанию (они не влияют на что-то напрямую). Вам нужно будет изменить каждый столбец к правильному Charset. PHPMYADMIN сделает это для вас (просто отредактируйте столбец, затем измените набор символов). Если вы хотите сделать RAW SQL, вам нужно знать определение столбца (SHOW CREATE TABLE foo покажет вам определение). Тогда вы можете использовать ALTER TABLE изменить определение.

Чтобы изменить по умолчанию Charset для таблицы:

ALTER TABLE `tablename` DEFAULT CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';

Чтобы изменить рисунку столбца с определением `foo varchar (128) набора символов" foo 'collate' foo'``

ALTER TABLE `tablename` MODIFY 
    `foo` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top