Russian Qt Forum

Qt => Базы данных => Тема начата: lokoArt от Январь 12, 2010, 09:03



Название: Ошибка при подключении к MSSQL с помощью ODBC
Отправлено: lokoArt от Январь 12, 2010, 09:03
У меня стоит Microsoft SQl server 2008 Expreess edition.
Я создал ODBC источник к нему.
И вот строки кода с помощью которых я пытаюсь подключиться:

Код:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={SQL Server Native Client 10.0};
Server=.\sqlexpress;Database=Clients;Uid=lokoArt;Pwd=123456;");
bool ok = db.open();

И он выводит ошибку:
Поставщик VIA: Не найден указанный модуль.
При установлении соединения с сервером произошла ошибка связанная с сетью или определённым экземпляром. Сервер не найден или недоступен.

Подскажите пожалуйста в чём проблема.
С Сервером я через Managment Studio работаю...  И когда создаю источник ODBC он пишет что тест успешен))) Единственное что меня смущает, атк это то, что я когад создаю источник я выбираю драйвер и там 2 драйвера: SQL Server, и Sql Server Native Client 10.0. Мне приходится выбирать первый, атк как когда я создаю со помощью второго то тест завершается с ошибкой(((

А если же я пытаюсь подключиться вот так:

Код:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Clients");
db.setHostName("");
db.setUserName("lokoArt");
db.setPassword("123456");
bool ok = db.open();

ТО пишет что в Указанном DSN и указанном приложении архитектура драйвера несовместима(((


Название: Re: Ошибка при подключении к MSSQL с помощью ODBC
Отправлено: lokoArt от Январь 12, 2010, 11:25
я так и не дождался помощи(((
Но скажу в чём была проблема)))
У меня стоит Windows 7 X64 и я создавал в администрировании истоник ODBC,  а заработало только тогда, когда я создал в 32-x разрядной версии администратора ODBC, который находится по адрессу %systemdrive%\Windows\SysWoW64\Odbcad32.exe.
Всем удачи!!!