我正在使用Ubuntu系统,我想连接到远程数据库SQL Express。
我使用 pyodbc 尝试使用以下步骤。
sudo apt-get install python-pyodbc
import pyodbc
cnxn = pyodbc.connect(DRIVER='{SQL Server}', SERVER='REMOTE_SERVER_IP', DATABASE='REMOTE_SERVER_DB_NAME', UID='redbytes', PWD='REMOTE_SERVER_DB_PASSWORD')
cursor = cnxn.cursor()
但我面临的问题如下:
pyodbc.Error: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)')
答案 0 :(得分:0)
要在Ubuntu上使用Python_3 + pyodbc + unixODBC(ODBC驱动程序管理器)+ FreeTDS(ODBC驱动程序),基本步骤是:
sudo su
apt install python3-pip unixodbc-dev tdsodbc
printf "\n[FreeTDS]\nDriver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so\n" >> /etc/odbcinst.ini
exit
pip3 install --user pyodbc
然后在ODBC连接字符串(以及DRIVER=FreeTDS
和其他必需的参数)中使用SERVER=
。