是否有可用于连接 MSSQL 和 Python 2.7 的模块?
我下载了 pymssql,但它是为 Python 2.6 版本设计的。是否有适用于 Python 2.7 的类似模块?
如果有人能提供链接,我会感激不尽。
重要提示:同时现在已经有 pymssql 模块可用。请务必阅读页面末尾的答案:https://dev59.com/2Ww05IYBdhLWcg3wTwKY#25749269
是否有可用于连接 MSSQL 和 Python 2.7 的模块?
我下载了 pymssql,但它是为 Python 2.6 版本设计的。是否有适用于 Python 2.7 的类似模块?
如果有人能提供链接,我会感激不尽。
重要提示:同时现在已经有 pymssql 模块可用。请务必阅读页面末尾的答案:https://dev59.com/2Ww05IYBdhLWcg3wTwKY#25749269
import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=localhost;DATABASE=testdb;UID=me;PWD=pass')
cursor = cnxn.cursor()
cursor.execute("select user_id, user_name from users")
rows = cursor.fetchall()
for row in rows:
print row.user_id, row.user_name
SQLAlchemy库(在另一个答案中提到),使用pyodbc连接MSSQL数据库(它尝试使用各种库,但pyodbc是首选)。下面是使用SQLAlchemy的示例代码:
from sqlalchemy import create_engine
engine = create_engine("mssql://me:pass@localhost/testdb")
for row in engine.execute("select user_id, user_name from users"):
print row.user_id, row.user_name
使用pip安装pyodbc
如下所示:pip install pyodbc
import pyodbc
cnxn = pyodbc.connect("DRIVER={SQL Server};SERVER=SOME-PC;DATABASE=my_db")
cursor = cnxn.cursor()
cursor.execute("insert into test_tb values(6, 'name')")
cursor.execute("select id, name from my_tb")
rows = cursor.fetchall()
for row in rows:
print row.id, row.name
详细信息请参见
https://github.com/mkleehammer/pyodbc/wiki
--compile failed with error code 1 in ...
- Michael Msudo apt install unixodbc-dev
,那么在Ubuntu 16.04上执行 pip install pyodbc
是没问题的。 - Gord Thompson