我在同一网络中的另一台计算机上拥有一个MS SQL数据库。
使用SQL Server Management Studio(SSMS) Express,我可以找到该数据库并连接没有问题。
但是当我使用pyodbc连接到同一服务器时,使用以下命令:
我得到了以下错误:
这里展示了使用SQL Server Studio Express远程连接成功的图片。
import pyodbc
server = r"xxxER\xxxSQLSERV"
db = "xxxDB"
user = "xxx"
password = "xxxx"
conn = pyodbc.connect('DRIVER={SQL Server};SERVER='+server + ';DATABASE=' + db +';UID=' + user + ';PWD=' + password)
我得到了以下错误:
pyodbc.OperationalError: ('HYT00', '[HYT00] [Microsoft][ODBC SQL Server Driver]Login timeout expired (0) (SQLDriverConnect)')
OBS:我猜服务器字符串应该是正确的,因为如果我更改它,我总是会收到以下错误:
pyodbc.Error: ('08001', '[08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied. (17) (SQLDriverConnect); [01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()). (53)')
这里展示了使用SQL Server Studio Express远程连接成功的图片。
conn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER='+server + ';DATABASE=' + db +';UID=' + user + ';PWD=' + password)
,将版本号17更改为15或14等。 - Tomy