2010-11-02 7 views
2

У меня есть приложение Qt 4, которое пытается подключиться к базе данных MS SQL Server 2008 с помощью драйвера Qt ODBC. Приложение работает нормально, когда оно работает в Windows; однако целевая ОС для приложения - это запустить его в GNU/Linux. При запуске приложения в GNU/Linux я получаю следующее сообщение об ошибке:Подключиться к MS SQL Server через ODBC

QSqlError(0, "QODBC3: Unable to connect", " [unixODBC][Driver Manager]Data source name not found, and no default driver specified") 

Есть ли что-то нужно настроить на сервере SQL или на стороне приложения, чтобы получить соединение работать?

+0

Как вы это исправили? Мне очень любопытно, поскольку у меня была такая же проблема, и оказалось, что ошибка была очень распространенной. –

+0

Проблема заключается в том, что вам нужно создать соединение unixODBC на компьютере. Вы не можете просто напрямую подключиться к серверу. Учебники в принятом ответе объясняют, как это работает. – JadziaMD

ответ

2

Я не очень много знаю о UnixODBC, но посмотрите здесь:
unixodbc.org/doc/

Для подключения к MSSQL, следующее может быть полезным:
http://www.unixodbc.org/doc/FreeTDS.html
или. ../FreeTDS2.html

0

Попробуйте скопировать файл odbc.ini в ~/.odbc.ini. Если вы снова не работаете, попробуйте скопировать тот же файл в /etc/odbc.ini. Если это не работает, так как эти каталоги различны для разных Unix-систем, найдите все файлы: *odbc*\.ini и посмотрите, пустые ли некоторые из них. Если это так, замените их на правильный файл .ini.

У меня была та же проблема, и это решило проблему. Но это действительно глупое решение, поэтому я ищу лучшего. Надеюсь, что помогло (: