我正在尝试使用Python 2.7(32位)在Windows 7上使用pyodbc版本3.0.6,SQLAlchemy 1.0.4连接到sql服务器实例。我正在使用以下连接字符串
DRIVER={SQL Server};SERVER=mymachinename;DATABASE=mydb;UID=sa;PWD=admin1;
但我不断收到这个错误
无法从字符串'DRIVER = {SQL Server}; SERVER = mymachinename; DATABASE = mydb; UID = sa; PWD = admin1'解析rfc1738 URL
我在sqlSoup中使用连接字符串。
db = sqlsoup.SQLSoup(connectionstring)
编辑使用我试着自动映射从SQLAlchemy的,它也失败,出现相同的消息
无法从字符串'DRIVER = {SQL Server}; SERVER = gagan; DATABASE = persons; UID = sa; PWD = admin1;'解析rfc1738 URL [在0.4秒内完成,退出代码为1] [shell_cmd:python -u“ C:\ Sandbox \ Python脚本\ BumpValues \ newConnectivityTest.py”]
我的代码如下
from sqlalchemy.ext.automap import automap_base
from sqlalchemy.orm import Session
from sqlalchemy import create_engine
Base = automap_base()
engine = create_engine("DRIVER={SQL Server};SERVER=gagan;DATABASE=persons;UID=sa;PWD=admin1;")
Base.prepare(engine, reflect=True)
usrs = Base.classes.users
print(usrs)
您能告诉我我在做什么错吗?
编辑我建议这不是Bryan提出的与重复的问题的重复项。例如,我遵循的问题与建议的相同
import sqlalchemy as sa
engine = sa.create_engine('mssql+pyodbc://sa:admin1@gagan/persons')
但即使失败,也会出现相同的消息
这是快照..第一个使用类型为“'mssql + pyodbc:// user:password @ server / database'”的连接字符串
而第二个使用类型为'DRIVER = {SQL Server}; SERVER = gagan; DATABASE = people; UID = sa; PWD = admin1;
谢谢
好的,这似乎已经解决了问题
import urllib
connection_string = "DRIVER={SQL Server};Database=people;SERVER=gagan;UID=sa;PWD=admin1"
connection_string = urllib.quote_plus(connection_string)
connection_string = "mssql+pyodbc:///?odbc_connect=%s" % connection_string
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句