Я работаю в среде, в которой unixODBC установлен на центрально смонтированном диске всей организации, но нам (фактическим разработчикам) не разрешается устанавливать в него драйверы или источники данных. Это все задом наперед, но я должен жить с этим.
Сейчас я пытаюсь создать приложение python, которое подключается к серверу mssql 2005 из этого unix enviro, поэтому мне, очевидно, нужны некоторые драйверы sql!
Я обошёл свое отсутствие доступа к предустановленному unixODBC, переустановив unixODBC на той части диска, над которой у меня есть полный контроль. Я установил freeTDS и настроил все так, чтобы я мог успешно подключиться к серверу с помощью isql - отлично!
Теперь единственная проблема в том, что когда я выполняю строку в моей программе на python (которая использует pyodbc), например:
import pyodbc
pyodbc.connect("DSN=<dsn_name>;UID=...;PWD=...", autocommit=True)
Я получаю
('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnectW)')
Я предполагаю, что это потому, что pyodbc все еще ищет исходную установку unixODBC, а не мою локальную. Вот мне и стало интересно:
Как настроить мои сценарии для поиска локальной установки unixODBC вместо той, которая установлена на главном диске