Работа с базой данных MySQL под X Window

Автор: olkv Дата: 19.08.2003 14:34 ASP Linux 9, MySQL, QT 3.2, Компилятор g++
Ситуация :
Есть база на MySQL кодовая таблица CP1251.

Немогу заставить отображать в таблице DataTable корректно
русские буквы.

Если добавить запись на русском из MySQL в коммандном режиме
то при просмотре select * from table1 запись отображается по Русски. При запуске приложения под X Window в таблице DataTable запись на русском отображается в другой кодировке (типа êúûăČĖÀ-).
При добавлении записи из X Window приложения в таблице появляется запись ??????? и при просмотре в команндном режиме MySQL выглядит также ??????.

Подскажите пожалуйста как правильно работать с базой данных в Русской кодировке ?
Re: Работа с базой данных MySQL под X Window 20.08.2003 05:48olkv mysqld]
default-character-set=cp1251
Данная строка присутсвует.

Кажеться, что дело даже не в базе данных.

Потому что пытаюсь делать следующее :

Беру простейщий запрос, типа SELECT NAME FROM TABLE1 и
вывожу его через qDebug( q.value(0).toString() );
Русские буквы при этом отображаются в терминале корректно (если они
были занесены с помощью самого MySQL).

Есля пытаюсь записи запроса добавить в QComboBox, то приходиться прибегать
к функции tr(), иначе данные заносяться некорректно.

Если в базу добавляю запись напрямую
target.exec("INSERT INTO TABLE1(NAME) VALUES('Пример');";-); ,
то тогда запись в базе отображается корректно, а вот если
пытаюсь сделать следующее
target.exec("INSERT INTO TABLE1(NAME) VALUES('"+
lineEdit1->text()+"');";-); ,
то тогда в базу в место русских символов заноситься "?" и
даже если пытаюся вывести так, qDebug( lineEdit1->text() );
на терминале вижу знак "?" вместо русских символов.

Пытался продедать следующее :
target.exec("INSERT INTO TABLE1(NAME) VALUES('"+
tr(lineEdit1->text())+"');";-); , непомогает.

Может быть по этому поводу, подскажите что нибудь ?
Re: Работа с базой данных MySQL под X Window 20.08.2003 07:51wizard580 Тогда не по теме. А где взяли QT 3.2?
я имею ввиду rpm.
Re: Работа с базой данных MySQL под X Window 20.08.2003 11:01olkv [www.trolltech.com]
есть ссылка на RPM в RedHat Linux.

Но не вверсии главное пробовал и на 3.2 и на 3.1, а на вопрос сможите ответить.
Re: Работа с базой данных MySQL под X Window 22.08.2003 01:40wizard580 может сделать так:
#define _TR(s) (QString::fromLocal8Bit(s))
а потом ставить вместо tr()...

У меня как-то была похожая проблема (правда не с SQL).
Помогло.
Re: Работа с базой данных MySQL под X Window 22.08.2003 01:41wizard580 дык там ссылка только на www.redhat.com
а где там взять пакет? я наверное совсем тупой. не вижу и все...
Re: Работа с базой данных MySQL под X Window 22.08.2003 10:54olkv В принципе 3.2 компилировал в ручную (брал с сайта разаработчика), на работе стоит 3.1 из пакета ASP Linux 9.

Извиняюсь, если ввел Вас в заблуждение.
Re: Работа с базой данных MySQL под X Window 22.08.2003 17:22Eugene Имсользуй QString:::fromLocal8Bit(...) при выводе из БД на экран,
и QString::local8Bit при записи в БД.
У меня эта проблема решилась именно так, только в Firebird.
При создании БД кодовая страница = NONE.

Удачи !
RSS-материал