通过 pyodbc 使用 python 2.7 和 MS odbc 驱动程序。我的连接字符串如下所示:
mssql+pyodbc://myuser:mypass@serverip/instancename?driver=ODBC+Driver+11+for+SQL+Server
我登录失败。但是,如果我在 microsoft sql server management studio 中使用相同的凭据和“serverip\instancename”,则可以连接。
让我发疯的事情是几天前,这个相同的连接字符串对我有用,但适用于同一台机器上的不同 sql server 实例。 所以我想弄清楚的是如何解决它。
感谢您的指点。
最佳答案
在学习 sqlalchemy 时,我遇到了同样的问题。这种方法对我有用:
import urllib
params = urllib.quote_plus("DRIVER={SQL Server Native Client 10.0};SERVER=dagger;DATABASE=test;UID=user;PWD=password")
engine = create_engine("mssql+pyodbc:///?odbc_connect=%s" % params)
来自 sqlalchemy 文档。它似乎与登录凭据无关,但错误消息对我来说是一样的,并且有效。
引用 http://docs.sqlalchemy.org/en/latest/dialects/mssql.html#pass-through-exact-pyodbc-string
关于python - SQLAlchemy PyODBC MS SQL Server 无 DSN 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30363348/