| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > latin1 -> cp1251 -> ?utf8? |
| Автор: SKIF52 23.5.2008, 11:45 | ||||||
| Есть база данных на mysql 5.0.45 с довольно интересной историей. Насколько я понял по факту (с самого начала) данные в ней находились в кодировке latin1 . Потом ее перевели в cp1251 (каким образом — не известно, похоже в редакторе сменили кодировку дампа, поправили там же DEFAULT CHARSET, и залили обратно). Сейчас данные в ней нужно корректно сконвертировать в utf8. Что пробовал делать: — менять кодировку дампа базы на utf8 (много разных текстовых редакторов и конвертеров ) и заливать обратно sypex dumper'ом, предварительно выставив в нем
— менять запросом к БД.
На данный момент эффекта нет. Правда есть мнение, что что-то сделать все-таки можно. Например с помощью такой конструкции
Это http://4matic.wordpress.com/2006/11/11/izmenenie-kodirovki-tablits-v-mysql/ статья. Вообщем попробовать можно, но опять же тут нужно для каждой таблицы (их 150 штук) поля прописывать, и не совсем ясен эффект от такого запроса, потому как в mysql плохо ориентируюсь на данный момент ( Посоветуйте как нужно это (cp1251->utf8) правильно сделать? |
| Автор: Feldmarschall 23.5.2008, 12:56 |
| Сконвертировать дамп, поменять чарсет у всех create table и залить обратно. а после этого убедиться, что возникающие проблемы действительно происходят от того, что база не сконвертировалась, а не от каких-то других причин. для этого надо внимательно анализировать происходящее и выводимое на экран, а не разводить руками "эффекта нет". Эффект всегда бывает. просто не всегда он положительный. При этом отрицательный может проявляться во множестве разных форм и давать пищу для размышлений. Скрипты твои знают, что база у них теперь в утф? |
| Автор: Feldmarschall 23.5.2008, 16:32 |
| При чем здесь форум? ты с форумом работаешь, или с БД? если при просмотре через phpMyadmin все прекрасно отображается, то почему вопрос вообще про дамп и заливку, а не про форум вбуллетин? Ну хоть какая-то логика в действиях должна быть? взял, написал скрипт из трех строчек, который выводит данные из базы. посмотрел - все ли правильно выводит. если все выводит нормально - какие претензии к базе? откуда такая уверенность, что единственная настройка форума отвечает за все операции, связанные с кодировкой? браузер у тебя знает, что получает утф? Добавлено @ 16:35 об этом и речь. а должны иметься ввиду - подробности. реакция системы на твои действия. анализируя которые можно исправить ситуацию. не бывает застывшего знания. Не бывает волшебной ИНСТРУКЦИИ, за которой вы все приходите на форум - как файлы заливать, как БД настроить. Бывает только ПРОЦЕСС. Процесс отладки. Залить дамп - это два действия. Настроить кодировку - тоже. Но в том-то и дело, что бывают тыщи нюансов, которые надо отлавливать и исправлять, Нюансов, которые не предусмотрит ни одна инструкция. и здесь уже требуется не инструкция, а осмысленные действия. |
| Автор: SKIF52 23.5.2008, 23:13 |
| Проблема решена, база сконвертированна и работает. Всем спасибо. |