有人见过这个错误吗?:
ProgrammingError: ('42000', '[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot open database "TC" requested by the login. The login failed. (4060) (SQLDriverConnect); [42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot open database "TC" requested by the login. The login failed. (4060)')
我已经验证了我的证书,它们是100%正确的。还有,我用的是:
python 3.9.7
pyodbc 4.0.0
和
[x for x in pyodbc.drivers() if x.startswith("ODBC Driver")]
我:
['ODBC Driver 11 for SQL Server', 'ODBC Driver 17 for SQL Server']
和我使用SSMS 2014所以ODBC驱动程序11应该支持。我失去了为什么这个错误一直弹出我的连接字符串,我的连接字符串是:
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=' + server + ';DATABASE=' + database + ';UID=' + username + ';PWD=' + password)
到目前为止,我已经验证了我能想到的一切,似乎都是正确的,问题是什么呢?
尝试更改驱动程序以显式使用v11
pyodbc.connect(driver='{SQL Server Native Client 11.0}',
server='Server', database='TC', uid='id',pwd='pass')