我目前正在尝试使用PyODBC连接到SQL Server(我无法查看,但有凭据)。我在Windows桌面上运行的代码,但在移动到我的RedHat Linux机器上时不起作用。我需要在Linux上支持一个项目。
以下是我所拥有的:
`collect([$item])->keyBy('id')->transform(
function($obj){ return $obj->val;
})`
这是我得到的错误:
server = 'tcp:myserver\inst1'
database = 'mydatabase'
username = 'myusername'
password = 'mypassword'
cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};SERVER=' + server + ';DATABASE=' + database + ';UID=' + username + ';PWD=' + password)
Windows版本和Linux版本之间的一个区别是驱动程序部分。 Windows使用' {SQL Server}'而Linux版本使用' {ODBC驱动程序13 for SQL Server}'。
在我的/etc/odbcinst.ini文件中,我有以下信息:
pyodbc.OperationalError: ('HYT00', u'[HYT00] [unixODBC][Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')
有人有任何建议吗?
答案 0 :(得分:0)
使用驱动程序路径而不是驱动程序名称。在您的示例中,使用完整的 /opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.9.1