|
|
|||||
Человек и Здание
|
UTF на выходе из MySQL
Вот у меня вопрос...
Поставил себе новый мускуль, раньше был очень уж старый. И он выдает назад данные ТОЛЬКО в UTF. Например, phpmyadmin при выборе кодировки, показывает только UTF-овские. Мои программы выводят ??????? Если программа при коннекте выполнит SQL-запрос SET CHARACTER SET cp1251 то все возвращается как надо. Но это переделывать ВСЕ мои программы??? Хочу настроить что-либо в сервере... My.ini Цитата:
__________________
Регардсы. Последний раз редактировалось Смольный (Smolniy); 11.06.2005 в 00:24. |
|
|||||
Ветеран форума
|
в 4.1 у каждой таблички своя кодировка может быть, задаётся во время CREATE TABLE
http://dev.mysql.com/doc/mysql/en/create-table.html CHARACTER SET charset_name [COLLATE collation_name] |
|
|||||
+ скорее всего если при create database указать character set, таблицы по дефолту будут этот character set получать.
__________________
suum quique |
|
|||||
DEFAULT CHARSET надо наверное поставить на таблицу.
__________________
Что за дурь? 50 символов в подписи!? |
|
|||||
F1
Регистрация: Apr 2000
Сообщений: 3,620
|
Смольный пишет:
Господа, я это знаю, проблема не в этом. 1. База зранит данные в 1251, это произошло хотя бы потому что я перенес данные из старой БД просто переписыванием папки data. 2. У меня баз штук 20 общей массой в гига полтора, если я буду пересоздавать таблицы и переливать данные, я умру. 3. База конвертирует данные туда-сюда без проблем, например если выполнить запрос SET CHARACTER SET cp1251 то она прекрасно отдает 1251, но я не хочу перелопачивать и дописывать все свои проги, и не могу дописать чуже проги (тот же phpmyadmin), форумы и прочую чепуху. Собственно говоря, меня нимало не волнует, как он там их хранит у себя внутре, вопрос в том, что он _отдает_ данные в utf. Я сильно подозреваю, что если создать таблицу как вы пишете, то отдавать он все равно будет в utf, конвертируя (хотя это надо бы проверить; вечером смогу, я сейчас в Школе). Штука в том что старенький мускуль работал без нареканий, новый выдает видимо какое-то умолчание, данные все те же. Не знает ли кто как это настраивается? Ведь попой же чувствую, что это какая-то настройка... Если никто не подскажет именно настроечный вариант - значит буду либо программы колбасить, либо пересоздам таблицы как вы говорите, что ж остается делать...
__________________
+_+ Последний раз редактировалось Ales; 17.06.2005 в 17:14. |
|
|||||
Ветеран форума
|
запускать сервер с параметрами
--character-set-server=cp1251 --default-character-set=cp1251 или в my.cnf добавить character-set-server = cp1251 default-character-set = cp1251 в раздел [mysqld] |
|
|||||
Регистрация: Apr 2003
Сообщений: 243
|
Что касается phpmyadmin - он, если видит MySQL 4.1+, всегда использует Unicode - это особенность именно phpmyadmin. Можно эту фичу в нём убрать, но не стоит
|
Часовой пояс GMT +4, время: 15:54. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|