2011-09-06 7 views
35

Esiste un modulo disponibile per la connessione di MSSQL e python 2.7?MSSQL in python 2.7

Ho scaricato pymssql ma è per Python 2.6. Esiste un modulo equivalente per python 2.7?

Non ne sono a conoscenza se qualcuno può fornire collegamenti.


Nota importante: nel frattempo è disponibile un modulo per palestre. Non mancate di leggere la risposta alla fine di questa pagina: https://stackoverflow.com/a/25749269/362951

+0

Il 2.7 non è compatibile all'indietro con 2.6? non funziona quel modulo in 2.6? – rplnt

+0

Durante l'installazione di http://code.google.com/p/pymssql/downloads/detail?name=pymssql-1.9.908.win32-py2.6.exe&can=2&q= verifica la versione di python e termina l'installazione – Shashi

+2

Ci sono istantanee per 2.7 http://build.damoxc.net/downloads/pymssql/snapshots/ ... se questo aiuta. – rplnt

risposta

52

È anche possibile utilizzare pyodbc di connettersi a MSSQL da Python.

Un example from the documentation:

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 

Il SQLAlchemy libreria (detto in un'altra risposta), utilizza pyodbc per la connessione al database MSSQL (si cerca varie librerie, ma pyodbc è la preferita). Esempio di codice utilizzando sqlalchemy:

from sqlalchemy import create_engine 
engine = create_engine("mssql://me:[email protected]/testdb") 
for row in engine.execute("select user_id, user_name from users"): 
    print row.user_id, row.user_name 
+3

https://github.com/mkleehammer/pyodbc – ALH

4

Installare pyodbc utilizzando pip come segue: 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 

Per ulteriori informazioni, vedere

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

+0

Questa installazione di pip non sembra più lavorare (Ubuntu 16.04, Python 2.7.): '--compile non riuscito con codice di errore 1 in ...' –

+2

@ MichaelMügge - 'pip install pyodbc' funziona correttamente su Ubuntu 16.04 se si esegue' sudo apt install unixodbc-dev' prima. –

+0

@GordThompson, infatti. Dettaglio importante lì. Grazie. –

17

Se arrivate attraverso questa domanda attraverso un ricerca web, nota che pymssql al giorno d'oggi fa supporta Python 2.7 (e 3.3) o più recente. Non c'è bisogno di usare ODBC.

Dai requisiti pymssql:

Python 2.x: 2.6 o più recente. Python 3.x: 3.3 o successivo.

Vedere http://pymssql.org/.