| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > кодовая страница в базе данных FireBird |
| Автор: olegkuzn 2.4.2015, 09:16 | ||
База данных - FireBird 2.0 обращаюсь к которой через ODBC - драйвер. В настройках ODBC - драйвера указано CharacterSet - Win1251. В объекте класса QTableView вместо русских символов появляется грязь, хотя установлена кодовая страница : "QTextCodec::setCodecForCStrings(QTextCodec::codecForName("CP1251"));" Подскажите в чем проблема. Программа запускается в Windows 7 Professional. Заранее спасибо. Вот код :
P.S. Давным-давно сталкивался с такой же проблемой. Тогда поменял кодовую страницу в базе. Сейчас этого сделать нельзя. Тогда база была DBASE IV (.dbf) сейчас FireBird и тогда Qt4.7 - сейчас Qt5.2. |
| Автор: borisbn 2.4.2015, 09:50 | ||
Я через ODBC не работал, но когда работал напрямую через Qt-шный драйвер QIBASE, то перед открытием базы делал так:
|
| Автор: tzirechnoy 2.4.2015, 11:35 | ||
А реально в базе какой? |
| Автор: olegkuzn 2.4.2015, 12:04 |
| Реально какой в базе ответить не могу. На компе только есть только служба fbserver.exe. Я выгружал в Excel2010 через ODBC. Все выгрузилось читабельно. Добавлено через 6 минут Реально какой в базе ответить не могу. На компе только есть только служба fbserver.exe. Я выгружал в Excel2010 через ODBC. Все выгрузилось читабельно. |
| Автор: olegkuzn 16.3.2016, 11:25 |
| Решил поднять годовалую тему. Вопрос с кодовой страницей в QODBC-соединении так и не решился. Задача была "отложена". Решил сейчас попробовать работать через QIBASE. Но получил ошибку: "SqlDatabase: QIBASE driver not loaded" Несколько рецептов из интернета не помогли.(не смог получить необходимые dll-файлы) Если кто работал с QIBASE драйвером подскажите где можно взять библиотеки и include-файлы файлы для работы с FireBird. И как правильно скомпилировать библиотеки в dll-файлы. P.S. Программа с QIBASE должна работать на машине на которой не установлен FireBird. Добавлено через 58 секунд Решил поднять годовалую тему. Вопрос с кодовой страницей в QODBC-соединении так и не решился. Задача была "отложена". Решил сейчас попробовать работать через QIBASE. Но получил ошибку: "SqlDatabase: QIBASE driver not loaded" Несколько рецептов из интернета не помогли.(не смог получить необходимые dll-файлы) Если кто работал с QIBASE драйвером подскажите где можно взять библиотеки и include-файлы файлы для работы с FireBird. И как правильно скомпилировать библиотеки в dll-файлы. P.S. Программа с QIBASE должна работать на машине на которой не установлен FireBird. |
| Автор: olegkuzn 18.3.2016, 15:06 | ||||
| Пытался сделать для QtCreator так как описано в справке в разделе QSqlDatabase Drivers - How to Build the QIBASE Plugin on Windows :
Команду nmake не нашел. В интернете нашел вариант с командой "mingw32-make all". Команда выдает ошибку :
Пытался напрямую указать библиотеки в команде qmake - "LIBS+=D:/Firebird25/lib/fbclient_ms.lib". Не помогло. Что дальше делать ума не приложу. |