Spaltennamen aus der pyodbc execute () – Anweisung zurückgeben

from pandas import DataFrame import pyodbc cnxn = pyodbc.connect(databasez) cursor.execute("""SELECT ID, NAME AS Nickname, ADDRESS AS Residence FROM tablez""") DF = DataFrame(cursor.fetchall()) 

Das ist gut, meine Pandas DataFrame zu bevölkern. Aber wie komme ich

 DF.columns = ['ID', 'Nickname', 'Residence'] 

Direkt aus dem Cursor Ist diese Information überhaupt im Cursor gespeichert?

3 Solutions collect form web for “Spaltennamen aus der pyodbc execute () – Anweisung zurückgeben”

Sie können die Spalten aus der Cursor-Beschreibung:

columns = [column[0] for column in cursor.description]

Aktuelle Pandas haben eine höhere Ebene read_sql Funktionen, die dies für Sie tun können

 import pyodbc import pandas as pd cnxn = pyodbc.connect(databasez) DF = pd.read_sql_query("SELECT ID, NAME AS Nickname, ADDRESS AS Residence FROM tablez", cnxn) 

Verbesserung der vorherigen Antwort, im Zusammenhang mit Pandas, fand ich das genau das, was ich erwarte:

 DF.columns = DataFrame(np.matrix(cursor.description))[0] 
  • Wie kann ich eine Datenbank von pyodbc sichern?
  • Python - Pyodbc Verbindungsfehler
  • Pyodbc und ms access 2010 Verbindungsfehler
  • Python fügt einen Doppelpunkt in einer Dezimalzahl aus Access über pyodbc ein
  • Python pandas to_sql mit sqlalchemy: Wie beschleunige ich den Export nach MS SQL?
  • Wie bekomme ich die ganze VARCHAR (MAX) Spalte mit Python pypyodbc
  • ODBC-Treiber 13 für SQL Server kann nicht lib auf pyodbc öffnen, während auf AWS E2 ubuntu-Instanz verbunden wird
  • Kann ich pyodbc / freetds und sqlalchemy mit dezimaldaten in mssql verwenden?
  • Python ist die beste Programmiersprache der Welt.