Python 在Linux上使用SQL Server本机客户端和Pyodbc

Python 在Linux上使用SQL Server本机客户端和Pyodbc,python,sql-server,linux,redhat,pyodbc,Python,Sql Server,Linux,Redhat,Pyodbc,我试图在RedHat机器上使用Python,使用Microsoft提供的驱动程序连接到SQL Server数据库。我知道驱动程序正在工作,因为我可以使用sqlcmd进行连接。Python中的以下内容将产生一个错误。pyodbc似乎找不到驱动程序。有人知道怎么解决这个问题吗 conStr = 'Driver={SQL Server Native Client 11.0};Server='+server+';Database='+db+'; UID='+u+';PWD='+pw+';' cnxn

我试图在RedHat机器上使用Python,使用Microsoft提供的驱动程序连接到SQL Server数据库。我知道驱动程序正在工作,因为我可以使用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)')

实际上,您可以使用pymssql在python中连接SQLServer。 它很容易使用,与MySQL python库类似


由于pyodbc要通过unixODBC,您能确认odbc.ini和odbcinst.ini设置正确吗?

我发现在Linux上,我需要删除驱动程序名称周围的大括号

有关Driver关键字的更多信息可以从这里收集: