![]() |
|
Модераторы: skyboy |
![]()
|
|
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
хочу одним махом перейти из cp1251 в utf-8
БД, таблицы в ней, данные, всё в cp1251 как грамотно переконвертировать все данные в utf-8? в частности, вот этот запрос
|
|||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
И вы туда-же...
Нет 9.1.12. Column Character Set Conversion Это сообщение отредактировал(а) sTa1kEr - 19.10.2009, 16:51 |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
||||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
Да. То, что выше приведенный запрос ничего не изменит можно догадаться по ключевому слову DEFAULT даже не заглядывая в, столь ненавистную всем, документацию. Это сообщение отредактировал(а) sTa1kEr - 19.10.2009, 17:14 |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
э, я его скопировал только по тому, что он был в соответствующей теме по поиску. что они тогда там обсуждали?
получается, надо писать бегунок по всем таблицам, который будет потрошить INFORMATION_SCHEMA, и конвертить каждый столбик? но они же у меня по дефолту аки таблица. одним изменением кодировки таблицы (или даже базы) не обойдётся? |
|||
|
||||
| sTa1kEr |
|
||||||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
Ну а какая ссылка то у темы?
Можно проще
|
||||||
|
|||||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
о, завтра будем мучать
а такой же волшебной фразы сразу для всей БД нет? чтоб одним запросом |
|||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
||||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
так, момент истины
запустил я этот скрипт, он переписал характеристику CHARSET и COLLATION для всех таблиц базы в SHOW CREATE table_name показывает нужную кодировку utf-8 ну, в ручную базе поменял тоже самое это что, всё? типа, у меня база в ютф-8 и все сохранённые данные в ней? к примеру, varchar(100) так и будет расчитано на 100 символов любого языка /латиница, кирилица и т.п./? |
|||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
||||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
да, что-то я такое уже сделал
я собсно чего полез конвертироваться. опять упёрся в аякс, который cp1251 в квадратики превращает. только в этот раз я перегонял солидный кусок текста. полностью его пропустить через rawurlencode() на сервере и decodeURIComponent() на клиенте не получилось. какая-то ошибка, а заниматься конвертом каждого отдельного кусочка - было в падлу. сейчас всё без этих нагромождений летает ладно, спасибо а есть какие-нибудь заморочки с utf-8? чёрт, вспомнил, теперь придётся отследить все строковые функции и переправить на mb_* |
|||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
Можно подменить строковые функции мультибайтовыми, но это нужно делать осторожно и всегда иметь ввиду, что получить размер строки в байтах при помощи strlen() уже будет невозможно. Так же не стоит подменять функцию mail(). |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
||||
|
||||
| sTa1kEr |
|
|||
|
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 7 Всего: 146 |
Что значит необходимых замен? Это список финкций которые можно подменить аналогичными из mb_* не трогая сам код. str_replace'у пофик на кодировку. Ну если вы не будете устанавилиывть первый бит для этого параметра, то логика работы оригинальной функции mail() не изменится. В общем, если у вас в коде используется много функций str* из приведенного по ссылке списка, то можно установить в PHP параметр mbstring.func_overload = 2. Иначе лучше заменить эти функции в коде руками. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 5 Всего: 315 |
хосподи, это ещё что такое? да не, не много. ну и не руками конечно, бегунком каким-нибудь |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |