мой код Python:Невозможно подключиться к MSSQL из Python
import pyodbc
cnxn = pyodbc.connect('DRIVER=FreeTDS;DSN=S29;UID=test;PWD=test;TDS_Version=8.0;ClientCharset=UTF8')
cursor = cnxn.cursor()
cursor.execute("select user_id, user_name from users")
rows = cursor.fetchall()
for row in rows:
print row.user_id, row.user_name
Получить сообщение об ошибке:
Traceback (most recent call last):
File ".../test_mssql_connect.py", line 4, in <module>
cnxn = pyodbc.connect('DRIVER=FreeTDS;DSN=S29;UID=test;PWD=test;TDS_Version=8.0;ClientCharset=UTF8')
pyodbc.Error: ('HY000', '[] (20013) (SQLDriverConnect)')
Я не могу найти информацию, что эта ошибка ('HY000', «[ ] (20013) (SQLDriverConnect) ') и как его исправить.
В то же время через TSQL, Osql и ISQL я успешно подключен к базе
мой odbc.ini
[S29]
Driver=FreeTDS
Description=S29
ServerName=192.168.0.29
Database=test
UID=test
PWD=test
TDS_Version=8.0
мой odbcinst.ini
[FreeTDS]
Description=FreeTDS
Driver=/usr/local/Cellar/freetds/0.95.1/lib/libtdsodbc.so
Setup=/usr/local/Cellar/freetds/0.95.1/lib/libtdsodbc.so
UsageCount=2
CPTimeout =
CPReuse =
TDS Version = 8.0
client charset = utf-8
мой freetds.conf
[global]
tds version = 8.0
[192.168.0.29]
host = 192.168.0.29
port = 1433
tds version = 8.0
[S29]
host = 192.168.0.29
port = 1433
tds version = 8.0
Можете ли вы телнет на сервер IP-адрес SQL из машины вы работаете код на? С терминала (cmd в Windows) попробуйте: 'telnet 192.168.0.29 1433' Если он подключается, вы хорошо. Если он просто говорит в «Подключение ...», вы не можете связаться с удаленным SQL Server. – FlipperPA
Успешно подключается через telnet, причем все тесты с консоли, используя ** tsql, osql ** и ** isql **, также идут хорошо, но соединение не работает с python. На сервере CentOS-соединение из python все работает, но на моей работе Mac никак не работает. – Ruslan