2009-04-20 6 views

Antwort

1

Die einzige ‚Dokumentation‘ zu finden, die ich gefunden ein Unit-Test war, die mit dem pywin32 Paket installiert wurde. Es scheint einen Überblick über die allgemeine Funktionalität zu geben. Ich fand es hier:

Python dir \ Lib \ site-packages \ win32 \ test \ test_odbc.py

ich auch darauf hinweisen, dass ich glaube, es ist die Python Database API Specification Version 1.0 implementiert, die hier dokumentiert ist:

http://www.python.org/dev/peps/pep-0248/

Beachten Sie, dass es auch V2.0 dieser Spezifikation ist (siehe PEP-2049)

auf einer Seite beachten, ich habe zu verwenden pywin32 odbc versucht, aber Ich hatte Probleme mit intermittierendem Absturz w Ich verwende den ODBC-Treiber. Ich bin kürzlich nach Pyodbc umgezogen und meine Probleme wurden gelöst.

+0

das hilft viel, danke! – user89021

3

Alternativen:

  • mxODBC von egenix.com (wenn Sie ODBC)
  • pyODBC
  • sqlalchemy und DB-API 2.0 Module (die nicht ODBC), aber es ist vielleicht besser alternative
2

Die Antwort ist: "Es gibt keinen". Im folgenden Beispiel wird jedoch gezeigt, wie eine Verbindung geöffnet und eine Abfrage ausgegeben wird und wie Spaltenmetadaten aus der Ergebnismenge abgerufen werden. Die DB-API 2.0-Spezifikation kann in PEP 249.

import dbi, odbc 

SQL2005_CS=TEMPLATE="""\ 
Driver={SQL Native Client}; 
Server=%(sql_server)s; 
Database=%(sql_db)s; 
Trusted_Connection=yes; 
""" 

CONN_PARAMS = {'sql_server': 'foo', 
       'sql_db': 'bar'} 

query = "select foo from bar" 

db = odbc.odbc(SQL2005_CS_TEMPLATE % CONN_PARAMS) 
c = db.cursor() 
c.execute (query) 
rs = c.fetchall() # see also fetchone() and fetchmany() 
# looping over the results 
for r in rs: 
    print r 

#print the name of column 0 of the result set 
print c.description[0][0] 

#print the type, length, precision etc of column 1. 
print c.description[1][1:5] 

db.close() 
+0

"" Die DB API 2.0 Spezifikation kann in PEP 249 gefunden werden. "" "Ist irrelevant - pywin32 unterstützt nur v 1.0 –

Verwandte Themen