Russian Qt Forum

Qt => Вопросы новичков => Тема начата: ДвеКопейки от Апрель 27, 2012, 06:09



Название: MS SQL Server 2005. Driver not loaded.
Отправлено: ДвеКопейки от Апрель 27, 2012, 06:09
Всем доброго здравия.

Возникла следующая ситуация. Моя программа коннектится к БД на сервере следующим образом:
Код:
  QString connectionString = "DRIVER={SQL Server};Server="+server+";Database=" + dbName;
  QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
  db.setUserName(dbLogin);
  db.setPassword(dbPassword);
  db.setDatabaseName(connectionString);

На родной машине все происходит прекрасно - работает, радуется жизни, обменивается данными. В общем помогала гордится собой короткий отрезок времени, до тех пор пока я не поставил ее на самом сервере, где она и должна была работать в режиме нон стоп.

Именно тут меня и постигла неудача, упорно выдает ошибку "Driver not loaded".

"Ок" - думаю, добавил следующее в маин:
Код:
        QDir::setCurrent(QCoreApplication::applicationDirPath());

QCoreApplication::addLibraryPath(QDir::currentPath()+"\\plugins");
QCoreApplication::addLibraryPath(QDir::currentPath());
Ну и соответственно в установщик закинул файлы из папочки plugins/sqldrivers.

Не спасло.

Где-то я все таки что-то упустил из вида.
Помогите пожалуйста.


Название: Re: MS SQL Server 2005. Driver not found.
Отправлено: V1KT0P от Апрель 27, 2012, 06:15
Всем доброго здравия.

Возникла следующая ситуация. Моя программа коннектится к БД на сервере следующим образом:
Код:
  QString connectionString = "DRIVER={SQL Server};Server="+server+";Database=" + dbName;
  QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
  db.setUserName(dbLogin);
  db.setPassword(dbPassword);
  db.setDatabaseName(connectionString);

На родной машине все происходит прекрасно - работает, радуется жизни, обменивается данными. В общем помогала гордится собой короткий отрезок времени, до тех пор пока я не поставил ее на самом сервере, где она и должна была работать в режиме нон стоп.

Именно тут меня и постигла неудача, упорно выдает ошибку "Driver not found".

"Ок" - думаю, добавил следующее в маин:
Код:
        QDir::setCurrent(QCoreApplication::applicationDirPath());

QCoreApplication::addLibraryPath(QDir::currentPath()+"\\plugins");
QCoreApplication::addLibraryPath(QDir::currentPath());
Ну и соответственно в установщик закинул файлы из папочки plugins/sqldrivers.

Не спасло.

Где-то я все таки что-то упустил из вида.
Помогите пожалуйста.
Вроде же плагин должен быть в папке ТвояПрограмма/sqldrivers/плагин


Название: Re: MS SQL Server 2005. Driver not loaded.
Отправлено: ДвеКопейки от Апрель 27, 2012, 06:30
Неправильно ошибку написал, изменил.

После установки все файлы с частью "odbc" из

C:\QtSDK\Desktop\Qt\4.7.4\msvc2008\plugins\sqldrivers

Устанавливаются в [Каталог программы]/plugins

Собственно для этого в майне и прописывал.

***

ОС Win7.
Пишу на VS 2008.


Название: Re: MS SQL Server 2005. Driver not loaded.
Отправлено: V1KT0P от Апрель 27, 2012, 06:33
После установки все файлы с частью "odbc" из

C:\QtSDK\Desktop\Qt\4.7.4\msvc2008\plugins\sqldrivers

Устанавливаются в [Каталог программы]/plugins

***

ОС Win7.
Пишу на VS 2008.
А надо в [Каталог программы]/sqldrivers
И так со всеми плагинами.
Например плагины форматов изображений аналогично в [Каталог программы]/imageformats


Название: Re: MS SQL Server 2005. Driver not loaded.
Отправлено: ДвеКопейки от Апрель 27, 2012, 06:40
Понял свой прокол, спасибо большое.

Все заработало, после того как всего навсего добавил папочку "sqldrivers" .

[Path]/plugins/sqldrivers