python - 需要从 Python Flask-Appbuilder 连接到 SQL Server 的帮助

标签 python python-2.7 flask flask-sqlalchemy flask-appbuilder

我是 Python + Flask + Flask Appbuilder 的新手,但我是一名专业的 Java 开发人员。我一直在开发一个小型应用程序,最初使用 SqlLite,现在我想迁移到 SQL Server,它将作为生产数据库。 我似乎无法正确连接。 我尝试过使用 DSN,但收到一条错误消息,指示驱动程序与其他内容(Python?)之间不匹配。对此错误的搜索似乎表明驱动程序是 32 位而 Python 是 64 位。但我仍然无法使其工作,所以我想我应该尝试直接连接。无论如何,我不想使用 DSN。我在网上搜索过,但找不到适合我的示例。

我已经导入了pyodbc。这是我当前尝试连接的方式:

params = urllib.quote_plus("DRIVER={SQL Server};SERVER=devsql07:1433;DATABASE=DevOpsSnippets;UID=<user>;PWD=<password>")
SQLALCHEMY_DATABASE_URI = "mssql+pyodbc:///?odbc_connect=%s" % params

这会产生以下错误消息:

2016-02-17 07:11:38,115:ERROR:flask_appbuilder.security.sqla.manager:DB Creation and initialization failed: (pyodbc.Error) ('08001', '[08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]Invalid connection. (14) (SQLDriverConnect); [01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (ParseConnectParams()). (14)')

任何人都可以帮助我正确连接吗?

我真的很感谢任何帮助。

最佳答案

如果您使用 pyodbc,您应该能够通过这种方式连接

import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=yourServer;DATABASE=yourDatabase;UID=;PWD=')

#putting to use
SQL = "select Field1, Field2 from someTable"
cursor = cnxn.cursor()
cursor.execute(SQL)
row = cursor.fetchall()
for r in row:
    print r[0] #field1
    print r[1] #field2

关于python - 需要从 Python Flask-Appbuilder 连接到 SQL Server 的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35457928/

相关文章:

python - 将 Python 作为服务运行时出现“404 Not Found”错误

python - 如何用 flask 扭曲运行?

python - 使用按钮 Tkinter 创建新的输入框

python - 使用 panda 格式化 Excel 的日期输出

python - 如何使用 python 使我的程序通用?

python - python 如何发送多个http请求

ajax - Elasticsearch 在使用 NGINX 和 UWSGI 返回结果时非常不可靠

python - 为什么 pandas groupby 在数据框中添加额外的 (groupby_info) 列以及如何删除它们?

python - Django - 从 HTML 生成图像

python:导入 libpci 引发 SyntaxError