Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.06.2005, 00:20
Смольный (Smolniy) вне форума Посмотреть профиль Отправить личное сообщение для Смольный (Smolniy) Посетить домашнюю страницу Смольный (Smolniy) Найти все сообщения от Смольный (Smolniy)
  № 1  
Ответить с цитированием
Смольный (Smolniy)
Человек и Здание
 
Аватар для Смольный (Smolniy)

администратор
Регистрация: Aug 1999
Адрес: Москау-сити, Рассея
Сообщений: 4,671
Отправить сообщение для Смольный (Smolniy) с помощью ICQ
По умолчанию UTF на выходе из MySQL

Вот у меня вопрос...
Поставил себе новый мускуль, раньше был очень уж старый.
И он выдает назад данные ТОЛЬКО в UTF. Например, phpmyadmin при выборе кодировки, показывает только UTF-овские.
Мои программы выводят ???????
Если программа при коннекте выполнит SQL-запрос
SET CHARACTER SET cp1251
то все возвращается как надо. Но это переделывать ВСЕ мои программы??? Хочу настроить что-либо в сервере...


My.ini
Цитата:
[client]
port=3306
default-character-set=cp1251

[mysqld]

port=3306
basedir="D:/www/MySQL/"
datadir="D:/www/MySQL/Data/"
default-character-set=cp1251

### мои бесплодные эксперименты, толку 0
#character-set-server=cp1251
#collation-server=cp1251_general_ci
default-collation=cp1251_general_ci
#init_connect="SET CHARACTER SET cp1251"
init-connect="SET NAMES 'cp1251';SET CHARACTER SET cp1251;"
###

character_sets-dir= D:/www/MySQL/share/charsets
default-storage-engine=INNODB
max_connections=100
query_cache_size=0
table_cache=256
tmp_table_size=5M
thread_cache_size=8
myisam_max_sort_file_size=100G
myisam_max_extra_sort_file_size=100G
myisam_sort_buffer_size=8M
key_buffer_size=8M
read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=212K
innodb_additional_mem_pool_size=2M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1M
innodb_buffer_pool_size=8M
innodb_log_file_size=10M
innodb_thread_concurrency=8
Мускуль 4.1.12a, php 5.0.4 (нареканий нет)
__________________
Регардсы.


Последний раз редактировалось Смольный (Smolniy); 11.06.2005 в 00:24.
Старый 11.06.2005, 12:23
nagash вне форума Посмотреть профиль Отправить личное сообщение для nagash Посетить домашнюю страницу nagash Найти все сообщения от nagash
  № 2  
Ответить с цитированием
nagash
Ветеран форума
 
Аватар для nagash

Регистрация: Jul 2001
Адрес: Москва
Сообщений: 3,088
Отправить сообщение для nagash с помощью ICQ
в 4.1 у каждой таблички своя кодировка может быть, задаётся во время CREATE TABLE
http://dev.mysql.com/doc/mysql/en/create-table.html
CHARACTER SET charset_name [COLLATE collation_name]

Старый 15.06.2005, 20:43
RFMitrio вне форума Посмотреть профиль Отправить личное сообщение для RFMitrio Посетить домашнюю страницу RFMitrio Найти все сообщения от RFMitrio
  № 3  
Ответить с цитированием
RFMitrio
 
Аватар для RFMitrio

Регистрация: Aug 2001
Адрес: город на Неве
Сообщений: 1,908
Отправить сообщение для RFMitrio с помощью ICQ
+ скорее всего если при create database указать character set, таблицы по дефолту будут этот character set получать.
__________________
suum quique

Старый 15.06.2005, 23:25
juggy вне форума Посмотреть профиль Отправить личное сообщение для juggy Посетить домашнюю страницу juggy Найти все сообщения от juggy
  № 4  
Ответить с цитированием
juggy
 
Аватар для juggy

Регистрация: Feb 2001
Адрес: LJ/~aleshru
Сообщений: 4,777
Отправить сообщение для juggy с помощью ICQ Отправить сообщение для juggy с помощью MSN Отправить сообщение для juggy с помощью Yahoo Отправить сообщение для juggy с помощью Skype™
DEFAULT CHARSET надо наверное поставить на таблицу.
Код:
CREATE TABLE `sometable` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `parent` int(10) unsigned NOT NULL default '0',
  `title` varchar(255) NOT NULL default '',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1;
__________________
Что за дурь? 50 символов в подписи!?

Старый 17.06.2005, 17:12
Ales вне форума Посмотреть профиль Отправить личное сообщение для Ales Найти все сообщения от Ales
  № 5  
Ответить с цитированием
Ales
F1
 
Аватар для Ales

Регистрация: Apr 2000
Сообщений: 3,620
Смольный пишет:
Господа, я это знаю, проблема не в этом.
1. База зранит данные в 1251, это произошло хотя бы потому что я перенес данные из старой БД просто переписыванием папки data.
2. У меня баз штук 20 общей массой в гига полтора, если я буду пересоздавать таблицы и переливать данные, я умру.
3. База конвертирует данные туда-сюда без проблем, например если выполнить запрос SET CHARACTER SET cp1251 то она прекрасно отдает 1251, но я не хочу перелопачивать и дописывать все свои проги, и не могу дописать чуже проги (тот же phpmyadmin), форумы и прочую чепуху.

Собственно говоря, меня нимало не волнует, как он там их хранит у себя внутре, вопрос в том, что он _отдает_ данные в utf. Я сильно подозреваю, что если создать таблицу как вы пишете, то отдавать он все равно будет в utf, конвертируя (хотя это надо бы проверить; вечером смогу, я сейчас в Школе).

Штука в том что старенький мускуль работал без нареканий, новый выдает видимо какое-то умолчание, данные все те же. Не знает ли кто как это настраивается? Ведь попой же чувствую, что это какая-то настройка...
Если никто не подскажет именно настроечный вариант - значит буду либо программы колбасить, либо пересоздам таблицы как вы говорите, что ж остается делать...
__________________

+_+


Последний раз редактировалось Ales; 17.06.2005 в 17:14.
Старый 17.06.2005, 17:20
nagash вне форума Посмотреть профиль Отправить личное сообщение для nagash Посетить домашнюю страницу nagash Найти все сообщения от nagash
  № 6  
Ответить с цитированием
nagash
Ветеран форума
 
Аватар для nagash

Регистрация: Jul 2001
Адрес: Москва
Сообщений: 3,088
Отправить сообщение для nagash с помощью ICQ
запускать сервер с параметрами
--character-set-server=cp1251
--default-character-set=cp1251
или в my.cnf добавить
character-set-server = cp1251
default-character-set = cp1251
в раздел [mysqld]

Старый 17.06.2005, 17:45
styx вне форума Посмотреть профиль Отправить личное сообщение для styx Найти все сообщения от styx
  № 7  
Ответить с цитированием
styx

Регистрация: Apr 2003
Сообщений: 243
Что касается phpmyadmin - он, если видит MySQL 4.1+, всегда использует Unicode - это особенность именно phpmyadmin. Можно эту фичу в нём убрать, но не стоит

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:54.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:54.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.