Название: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: Jokser от Май 27, 2011, 17:19 Установил Qt SDK 1.1.1. Операционка - Windows XP. Есть база на MS SQL Server 2008, с которой нужно работать. Прочитал, что нужно использовать драйвер ODBC. Однако Qt его не нашел.
Код: qDebug() << QSqlDatabase::drivers(); Я прочитал кучу тем на эту проблему. Требуется собрать плагин из %QTDIR%\src\plugins\sqldrivers\odbc Однако у меня таких папок просто нет. Я откопал только QtSDK\Desktop\Qt\4.7.3\mingw\plugins\sqldrivers Где у меня 2 dllки для sqlite. И QtSDK\Desktop\Qt\4.7.3\mingw\include\QtSql, где есть qsql_odbc.h . Но что с ним делать непонятно. Пожалуйста, помогите. Как же собрать и запихать этот ODBC драйвер? И попутный вопрос. Как использовать только один коннект к базе - т.е. один объект QSqlDatabase db для всех диалоговых окон? Создать "connect.h" где поместить класс со static QSqlDatabase db с функцией коннекта там же? и делать include "connect.h" везде, где используется работа с БД? Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: Странник от Май 27, 2011, 19:16 странные пути там..ты уверен, что исходники библиотеки у тебя стоят? проверь QtSDK\Desktop\Qt\4.7.3\mingw\src\plugins\sqldrivers\odbc. собирается элементарно.
для использования только одного коннекта к базе никаких выкрутасов не нужно. один раз, например в main() или конструкторе главного окна: Код: QSqlDatabase database = QSqlDatabase::addDatabase("QODBC3"); это соединение будет в дальнейшем использоваться по умолчанию при всех твоих обращениях к серверу БД. "Driver={SQL Server}; Server=SERVER_NAME; Database=DATABASE_NAME; Trusted_Connection=yes;" замени на свою строку коннекта. Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: Jokser от Май 27, 2011, 19:25 Папки src у меня нигде нет. Я устанавливал онлайн-инсталлятором для Windows. Я так понимаю, сорцы нужно отдельно докачать? только где? Я нашел репозиторий qt, но он естественно под Linux.
Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: Странник от Май 27, 2011, 22:15 в данный момент SDK у меня не стоит, предпочитаю ставить частями. но насколько помню, есть у них онлайн-апдейтер с возможностью выбора устанавливаемых компонентов (в главном меню есть ярлык). через него сорцы выкачать можно.
а вообще, они находятся здесь: http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.3.zip Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: Jokser от Май 28, 2011, 00:23 Итак, все получилось! Спасибо Страннику.
Вкратце расскажу по шагам для всех, что нужно делать, чтобы облегчить жизнь будущим людям, которые тоже на этом споткнутся. 1. После установки, необходимо проверить наличие папки src в директориях Qt. Если ее нет, то заходим в SDKMaintanceTools. Далее Miscellaneous->Qt Sources и ставим галочку напротив Qt 4.7.3 Sources. Далее next и ждем закачки сорцов. Лично у меня они установились в QtSdk/QtSources. 2. Теперь, пропишем пути к qmake и mingw32-make в переменных средах: Идем: Мой Компьютер->Дополнительно->Переменные Среды. Находим переменную PATH. Добавляем туда 2 пути. Один к qmake: Лично у меня он такой: QtSDK\Desktop\Qt\4.7.3\mingw\bin И к mingw32-make: QtSDK\mingw\bin 3. Заходим в cmd и идем к заветной папке с драйвером odbc : QtSDK\QtSources\4.7.3\src\plugins\sqldrivers\odbc Далее пишем: Код: qmake odbc.pro 4. Должна появится папка Debug, откуда забираем все файлы и копируем к нам в sqldrivers. У меня путь такой: QtSDK\Desktop\Qt\4.7.3\mingw\plugins\sqldrivers Если все сделали правильно, драйвер ODBC должен появится в списке доступных драйверов в QSqlDatabase. Для других драйверов все делается почти аналогичным образом, только компилируются с другими параметрами, подробнее здесь: http://doc.crossplatform.ru/qt/4.3.2/sql-driver.html (http://doc.crossplatform.ru/qt/4.3.2/sql-driver.html) Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: Странник от Май 30, 2011, 14:02 драйвер нужно собрать и в debug, и в release. итого 4 файла:
debug: qsqlodbcd4.a, qsqlodbcd4.dll release: qsqlodbc4.a, qsqlodbc4.dll Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: KBAC от Январь 01, 2012, 21:39 "Идем: Мой Компьютер->Дополнительно->Переменные Среды. Находим переменную PATH."
Что-то не понятно как зайти из моего компьютера (я так понимаю через Windows проводник надо это делать) в "дополнительно". П.с. лаконичная версия моего сообщения:"Какой Мой Компьютер Блеать?". Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: KBAC от Январь 01, 2012, 22:20 Как написать в командной строке, чтобы собрать релизную версию dll?
Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: lit-uriy от Январь 02, 2012, 09:01 >>Что-то не понятно как зайти из моего компьютера
По иконке "Мой компьютер" (что на рабочем столе), щёлкаешь правой кнопкой мыши, появляется контекстное меню, в нём выбираешь пункт "свойства". Появится диалоговое окно, а на нём вкладка "Дополнительно" Название: Re: QT ODBC Driver как добавить в список видимых драйверов? Отправлено: KBAC от Январь 02, 2012, 15:10 спс
|