Flask-SQLAlchemy:"用户登录失败"连接到MSSQL数据库。苹果系统

时间:2018-04-02 04:03:34

标签: python flask sqlalchemy flask-sqlalchemy pyodbc

Flask和Flask-SQLAlchemy的新手。试图连接到远程MSSQL数据库。

工具集: macOS 10.13(High Sierra) Python3 烧瓶 烧瓶的SQLAlchemy freetds的 pyodbc

如果我使用标准的flask-sqlalchemy URI建立连接,如下所示:

app.config['SQLALCHEMY_DATABASE_URI'] = 'mssql+pyodbc://<username>:<password>@<servername>/<database name>?port=1433&driver=FreeTDS&tds_version=7.3'

我最终收到此错误消息:

sqlalchemy.exc.ProgrammingError: (pyodbc.ProgrammingError) ('42000', "[42000] [FreeTDS][SQL Server]Login failed for user '<username>'. (18456) (SQLDriverConnect)") 

有趣的是,如果我只是在烧瓶外面使用直接的pyodbc连接,它就可以工作。那段代码:

cnxn = pyodbc.connect('DRIVER={FreeTDS};TDS_Version=7.3;SERVER=<servername>;PORT=1433;DATABASE=<database name>;UID=<username>;PWD=<password>')

我需要通过Flask-SQLAlchemy解决连接问题,或者知道是否可以使用直接的pyodbc.connect语句创建连接,并以某种方式将其传递给Flask-SQLAlchemy。

感谢您的任何指导或想法。

更新

我也尝试过:

params = urllib.parse.quote_plus('DRIVER={FreeTDS};SERVER=<servername>;DATABASE=<database name>;PORT=1433;UID=<username>;PWD=<password>;TDS_Version=7.3')

app.config['SQLALCHEMY_DATABASE_URI'] = "mssql+pyodbc:///?odbc_connect=%s" % params

但我得到的相同&#39;登录失败&#39;错误。

0 个答案:

没有答案
相关问题