![]() |
Модераторы: skyboy |
![]() ![]() ![]() |
|
new |
|
||||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
OS:Windows XP SP2
DB: MySQL 5.0.22 Во время конфигурации выбрал utf status и show variables like '%char%' показывают всюду utf8; После запроса:
ERROR 1406 (22001): Data long too for column 'type_name' at row 1
Погуглил,вроде это баг такой... для этой версии Все выше было как инфа для тех кто напорится на такие же грабли. Теперь вопрос: Посоветуйте мускул (желательно 5ой ветки) чтобы можно было без проблем работать с utf8; |
||||
|
|||||
Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 21 Всего: 73 |
У меня стоит 5.0.18, проблем пока не наблюдал.
Добавлено @ 18:45 Создал таблицу, вставил приведенную запись - работает. Добавлено @ 18:51 Гы... Получилось сгенерить такую ошибку:
Мораль: ставьте нормальную кодировку соединения. Добавлено @ 18:51 Забыл добавить, первоначально клиент работал в cp866. -------------------- Теперь при чем :P |
|||
|
||||
new |
|
||||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
Так все-таки получилось вставить запись или нет,что то я не понял ? status и show variables like '%char%' показывают всюду utf8 ? Кстати народ подключайтесь ![]() Я пробывал делать инсерт из виндовой консоли,MySQL Front 3.1 и прогаммно через Hibernate2.Результат - сабжевая ошибка. |
||||
|
|||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
вобщем, похожая ситуация: создаём таблицу. создаём с указанием стандарт-кодировки(по дефолту обычно latin1). потом в процессе работы, вспоминаем о том, что сделали чего-то не то, надо ж и русские слова хранить и т.д.. Делаем ALTER таблицы, меняем кодировку. НО! Кодировки уже созданных столбцов остались прежними! И при вставке в них не-латиницы, возникает ошибка, визуально выглядящая как "data too long". В такой ситуации решение - явно обновить кодировку у каждого столбца.
Добавлено @ 21:13 Не считая моих собственных ошибок(см. выше) ни разу не имел ошибок со вставкой/обновлением/выводом данных таблиц, хранящих данные в UTF. |
|||
|
||||
new |
|
||||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
Так я ведь специально для этого переустановил мускуль 5.0.22 и сконфигурировал его под utf8.Убедился что все выставлено путем:
Далее создал новые базу и таблицу и даже для столбца кодировку прставил и ... обломался...
skyboy,если у тебя рабочая база вся в UTF-8 приведи плиз номер версии и скрипт для создания какой нить базы и таблицы. |
||||
|
|||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
на работе. завтра.впрочем, не могу на 100% быть уверен, что .0.22. Может, старее.
|
|||
|
||||
new |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
Всё ребята, я все понял !!!
Проблема была в клиенте (для инсерта я использовал нативный mysql.exe и MySQL Front 3.1).А спас меня от самоубийства об стену Hibernate ![]()
Я классифицировал крякозяблы и понял,что MySQL Front просто берет байтовый поток из базы и согласно таблице cp1251 отображает их. Скорее всего дело в том,что не зарегистрированным юзерам нет возможности менять переменные окружения в MySQL Front - а по дефолту там клиентский вывод в cp1251.Вот и сказке конец,кто послушал молодец ... Это сообщение отредактировал(а) new - 26.7.2006, 22:50 |
|||
|
||||
Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 21 Всего: 73 |
Дык я это и имел в виду ![]() -------------------- Теперь при чем :P |
|||
|
||||
new |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
А какие клиенты работают нормально с UTF-8 ?
MySQL Front у меня не зареген,там вроде поменять вывод нельзя. |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | MySQL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |