복붙노트

[PYTHON] pyodbc execute () 문에서 열 이름을 반환합니다.

PYTHON

pyodbc execute () 문에서 열 이름을 반환합니다.

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())

내 팬더 DataFrame을 채우는 것도 좋습니다. 그러나 어떻게 얻을 수 있습니까?

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

커서에서 곧장? 그 정보는 커서에 저장되어 있습니까?

해결법

  1. ==============================

    1.커서 설명에서 열을 가져올 수 있습니다.

    커서 설명에서 열을 가져올 수 있습니다.

    columns = [cursor.description의 열에 대한 열 [0]]

  2. ==============================

    2.최근 판다는 당신을 위해 이것을 할 수있는 더 높은 수준의 read_sql 함수를 가지고 있습니다.

    최근 판다는 당신을 위해 이것을 할 수있는 더 높은 수준의 read_sql 함수를 가지고 있습니다.

    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)
    
  3. ==============================

    3.앞의 대답을 향상시키면서, 판다의 맥락에서 나는 이것이 정확히 내가 기대하는 바를 발견했다.

    앞의 대답을 향상시키면서, 판다의 맥락에서 나는 이것이 정확히 내가 기대하는 바를 발견했다.

    DF.columns = DataFrame(np.matrix(cursor.description))[0]
    
  4. from https://stackoverflow.com/questions/12704305/return-column-names-from-pyodbc-execute-statement by cc-by-sa and MIT license