Использование собственного клиента SQL Server с Pyodbc в Linux

Я пытаюсь использовать Python на машине RedHat для подключения к базе данных SQL Server с помощью предоставленного Microsoft драйвера. Я знаю, что драйвер работает, потому что я могу подключиться с помощью sqlcmd. Следующее в Python дает ошибку. Кажется, что pyodbc не может найти драйвер. Кто-нибудь знает, как это исправить?

conStr = 'Driver={SQL Server Native Client 11.0};Server='+server+';Database='+db+';  
UID='+u+';PWD='+pw+';'
cnxn = pyodbc.connect(conStr)

pyodbc.Error: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)')

person Tom K    schedule 18.06.2012    source источник


Ответы (3)


Я обнаружил, что в Linux мне нужно удалить фигурные скобки вокруг имени драйвера.

Дополнительную информацию о ключевом слове Driver можно получить здесь: http://msdn.microsoft.com/en-us/library/hh568455

person lplatypus    schedule 26.08.2012

На самом деле, вы можете использовать pymssql для подключения SQLServer в python. Он прост в использовании, как и MySQL-python lib.

http://code.google.com/p/pymssql/

person neildd    schedule 24.07.2012

Поскольку pyodbc проходит через unixODBC, можете ли вы подтвердить, что файлы odbc.ini и odbcinst.ini настроены правильно?

person iruvar    schedule 24.07.2012