我正在尝试访问我的数据仓库 azure,在 python 的 mlstudio-attached-notebook 中获取一些数据。简单连接说找不到驱动程序。
[01000] [unixODBC][驱动程序管理器]无法打开 lib 'ODBC Driver 13 for SQL Server':找不到文件 (0) (SQLDriverConnect)。
现在,我需要知道,是防火墙问题还是驱动程序名称不正确的问题。
我尝试了多个驱动程序名称/字符串。没有效果。
我正在尝试访问我的数据仓库 azure,在 python 的 mlstudio-attached-notebook 中获取一些数据。简单连接说找不到驱动程序。
[01000] [unixODBC][驱动程序管理器]无法打开 lib 'ODBC Driver 13 for SQL Server':找不到文件 (0) (SQLDriverConnect)。
现在,我需要知道,是防火墙问题还是驱动程序名称不正确的问题。
我尝试了多个驱动程序名称/字符串。没有效果。
通过查看 php 的问题,其中一个人建议了驱动程序名称。
https://github.com/Microsoft/msphpsql/issues/526
驱动程序是“用于 SQL Server 的 ODBC 驱动程序 17”
安装 pyodbc 和所需的包
sudo apt-get -y 安装 python-pip
sudo pip install --upgrade pip
sudo apt-get install unixodbc-dev
sudo apt-get install python-dev
sudo pip install pyodbc
最后,运行以下 Python 脚本进行测试。
import pyodbc
server = 'tcp:yourserver.database.windows.net'
database = 'mydb'
username = 'myuser'
password = 'mypass'
cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
cursor.execute("SELECT @@version;")
row = cursor.fetchone()
while row:
print row
row = cursor.fetchone()