python 2.7中的MSSQL

Sha*_*shi 39 python sql-server sql-server-2008 pymssql python-2.7

是否有可用于连接MSSQL和python 2.7的模块?

我下载了pymssql,但它适用于python 2.6.是否有任何等效的python 2.7模块?

如果有人可以提供链接,我不知道.


重要提示:在此期间,有一个pymssql模块可用.不要错过阅读本页末尾的答案:https://stackoverflow.com/a/25749269/362951

cod*_*ape 57

您还可以使用pyodbc从Python连接到MSSQL.

文档中的一个示例:

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
Run Code Online (Sandbox Code Playgroud)

所述的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
Run Code Online (Sandbox Code Playgroud)


Sae*_*aeX 17

如果你碰到这个问题,通过网络搜索来了,请注意,pymssql现在支持的Python 2.7(3.3)或更高版本.无需使用ODBC.

pymssql要求:

Python 2.x:2.6或更新版本.Python 3.x:3.3或更新版本.

http://pymssql.org/.


小智 5

pyodbc使用pip 安装如下: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
Run Code Online (Sandbox Code Playgroud)

有关详情,请参阅

https://github.com/mkleehammer/pyodbc/wiki

  • @MichaelMügge - "pip install pyodbc"在Ubuntu 16.04上工作正常,如果你先做sudo apt install unixodbc-dev`. (2认同)