使用 pyodbc 将 Python 连接到 MS SQL Server

Posted

技术标签:

【中文标题】使用 pyodbc 将 Python 连接到 MS SQL Server【英文标题】:Connect Python to MS SQL Server using pyodbc 【发布时间】:2014-11-12 00:00:04 【问题描述】:

我在将 pyodbc 连接到我的 SQL Server 时遇到问题。当我运行它时,根本没有输出,也没有错误消息或任何告诉我出了什么问题?即使在我按了几次 Enter 之后也没有?

 import pyodbc
 cnxn = pyodbc.connect('DRIVER=SQL Server;SERVER=marketing-sql01.onlive.corp;DATABASE=grok;UID=austin.trombley;PWD=XXXX')
 cursor = cnxn.cursor()
 cursor.execute("select * from user")
 rows = cursor.fetchall()
 for row in rows:
      print row.user_id, row.user_name

【问题讨论】:

用户表中有行吗? 是的,用户表中有 5,000+ 行 您是否运行过调试器并单步执行?它只是没有错误地退出还是在等待模式下卡在某个地方? 顺便说一句,你能不能把pyodbc 换成pypyodbc 看看你有没有更好的运气? 【参考方案1】:

试试……

...

for row in rows:
    print row['user_id'], row['user_name']

【讨论】:

pyodbc row values 可通过列名 (row.column) 或整数(非字符串)索引 (row[0]) 访问。 啊,我想我的回答只对 Postgres 有效。 这是 pyodbc 行为,与数据库管理系统无关。

以上是关于使用 pyodbc 将 Python 连接到 MS SQL Server的主要内容,如果未能解决你的问题,请参考以下文章

Python pyodbc 连接到 ms 访问数据库

使用Python通过Windows身份验证连接到MS SQL Server?

将 sqlalchemy 连接到 MS Access

使用 pyodbc 将 SQL Server 连接到 Python 3

尝试使用pyodbc将python连接到Access数据库时出错[重复]

使用 pyodbc 将 docker python 连接到 SQL 服务器