Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 07.10.2010, 12:26   #1
Местный
 
Регистрация: 23.02.2009
Сообщений: 319
Сказал Спасибо: 72
Имеет 60 спасибок в 45 сообщенях
Kilatif пока неопределено
По умолчанию Delphi 7 и MySQL (проблема с кодировкой)

Хочу решить такую задачку. Вот только не могу понять как. Изрыл гугл, ничего не помогает. Собственно вот в чем проблема...

Мне нужно в делфе использовать мускул. Для это я использовал компонент ZeosDBO 6.6.6. Сконектить их удалось без проблем, но проблема появилась, когда я захотел вывести поле из мускула, в котором содержится русскоязычный текст, в (допустим) Edit или Memo Delphi. Когда я хочу вывести, то вместо нормального текста появляются вопросы.

Использую Delphi 7, MySQL 8. В мускуле, в тех полях, которые хочу просмотреть, стоит кодировка utf8_general_ci.

Кто знает в чем проблема и как ее исправить?
Возможно указал не все нужные данные, которые использую, если что спросите - скажу.

P.S. Использовал стандартный UTF8ToAnsi - безрезультатно, выдает тоже самое. Делал так:
Код:
Memo2.Lines.Add(UTF8ToAnsi(DataSet.Fields[0].Value))
;

P.P.S. Я предполагаю, что трабла в самом Dataset'е (TZQuery), может там не указал кодировку где... потому что в Watche, когда смотрю тот же DataSet.Fields[0].Value, тоже появляются вопросы. Все нужные переменные объявляю динамически.

Последний раз редактировалось Kilatif, 07.10.2010 в 12:30.
Kilatif вне форума   Ответить с цитированием
Старый 07.10.2010, 17:52   #2
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Ну я всего пару раз делал на делфи управление мускулом и не большой специалист в этом. Я пользовался таким компонентом:
http://www.vitaliy.org/Project/View/40
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился спасибкой от:
Старый 08.10.2010, 00:31   #3
Местный
 
Регистрация: 23.02.2009
Сообщений: 319
Сказал Спасибо: 72
Имеет 60 спасибок в 45 сообщенях
Kilatif пока неопределено
По умолчанию

А проблемы с кодировкой у тебя были? Т.е. кириллические символы у тебя нормально отображались? И если остались примеры работы с этой компонентой, а то в мускуле я тоже не знаток ^_^

Последний раз редактировалось Kilatif, 08.10.2010 в 00:34.
Kilatif вне форума   Ответить с цитированием
Старый 08.10.2010, 00:39   #4
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Проблем не было, только база у меня была в Ansi. Примеров к сожалению не осталось, давненько я делал. Просто понял что на пхп работать с мускулом намного проще, знать почти ничего не надо
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
Старый 09.10.2010, 01:05   #5
Местный
 
Регистрация: 23.02.2009
Сообщений: 319
Сказал Спасибо: 72
Имеет 60 спасибок в 45 сообщенях
Kilatif пока неопределено
По умолчанию

Эм.. а как ты таблицы в кодировку Ansi поставил? оО
Kilatif вне форума   Ответить с цитированием
Старый 09.10.2010, 18:10   #6
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

При создании базы (не таблиц, а целой базы) указывается кодировка

CREATE DATABASE [IF NOT EXISTS] db_name [CHARACTER SET charset] [COLLATE collation];
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился спасибкой от:
Старый 10.10.2010, 01:11   #7
Местный
 
Регистрация: 23.02.2009
Сообщений: 319
Сказал Спасибо: 72
Имеет 60 спасибок в 45 сообщенях
Kilatif пока неопределено
По умолчанию

Спасибо, буду знать на будущее, а пока я сделал немного по другому, но там тоже меняется кодировка в самом мускуле
Kilatif вне форума   Ответить с цитированием
Старый 10.10.2010, 13:41   #8
Пользователь
 
Аватар для Maxno
 
Регистрация: 26.05.2009
Сообщений: 70
Сказал Спасибо: 32
Имеет 13 спасибок в 10 сообщенях
Maxno пока неопределено
По умолчанию

сразу после удачного соединения, выполнить запрос - "SET NAMES cp1251;" вместо cp1251 - нужная кодировка поддерживаемая мускулом. и вообще вроде в самом соединении с базой в зеосе тоже кодировка настраивается... если не ошибаюсь.
__________________
Home site - www.xmlex.ru
Maxno вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг



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

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


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

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!