Python SQLAlchemy:未找到数据源名称并且未指定默认驱动程序
问题描述:
使用Python:使用pyodbc连接到SQL Server时,一切正常,但是当我切换到sqlalchemy时,连接失败,给我错误消息:Python SQLAlchemy:未找到数据源名称并且未指定默认驱动程序
('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')
我的代码:
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=servername;DATABASE=dbname;UID=username;PWD=password')
engine = sqlalchemy.create_engine("mssql+pyodbc://username:[email protected]/dbname")
我无法找到我的代码中的错误,不明白为什么第一个选项工作,但第二个没有。
帮助非常感谢!
答
它使用pymssql而不是pyodbc。
安装pymssql使用PIP,然后更改您的代码:
engine = sqlalchemy.create_engine("mssql+pymssql://username:[email protected]/dbname")
答
就遇到了这个问题,以及,追加司机查询字符串来我的连接路径的结尾工作:
"mssql+pyodbc://" + uname + ":" + pword + "@" + server + "/" + dbname + "?driver=SQL+Server"