ODBC ( ) pandas 0.14.1 pyodbc 3.0.7. AdventureWorks2008R2.
, pyodbc:
import pandas as pd
import pyodbc
connection = pyodbc.connect(driver='{SQL Server Native Client 11.0}', server='ServerInstance', database='AdventureWorks2008R2', trusted_connection='yes')
sql = "{call dbo.uspGetEmployeeManagers(?)}"
params = (3,)
cursor = connection.cursor()
rows = cursor.execute(sql, params).fetchall()
print(rows)
:
[(0, 3, 'Roberto', 'Tamburello', '/1/1/', 'Terri', 'Duffy'), (1, 2, 'Terri', 'Duffy',
'/1/', 'Ken', 'Sรกnchez')]
pandas :
df = pd.read_sql(sql=sql, con=connection, params=params)
print(df)
:
RecursionLevel BusinessEntityID FirstName LastName OrganizationNode \
0 0 3 Roberto Tamburello /1/1/
1 1 2 Terri Duffy /1/
ManagerFirstName ManagerLastName
0 Terri Duffy
1 Ken Sรกnchez
Since you cannot upgrade to pandas 0.14.1, download the results from pyodbc using pandas.DataFrame.from_records :
columns = [column[0] for column in cursor.description]
df = pd.DataFrame.from_records(rows, columns=columns)
Bryan source
share