如何使用python将sql数据库导出到excel

如何使用python将sql数据库导出到excel,python,Python,如何使用python将sql数据库导出到excel,包括列名?我在这里试过: import pyodbc import pandas as pd cnxn = pyodbc.connect("myconnection") cursor = cnxn.cursor() a=input("enter your source code:") script = """ xlsexcel '"+a+"' """ cursor.execute(script) b=list() for row in cur

如何使用python将sql数据库导出到excel,包括列名?我在这里试过:

import pyodbc
import pandas as pd

cnxn = pyodbc.connect("myconnection")
cursor = cnxn.cursor()
a=input("enter your source code:")
script = """
xlsexcel '"+a+"' """
cursor.execute(script)
b=list()
for row in cursor:
   b.append(row)
   print(b)
columns = [desc[0] for desc in cursor.description]
data = cursor.fetchall()
df = pd.DataFrame(list(data), columns=columns)
df = pd.read_sql_query(script, cnxn)
writer = pd.ExcelWriter('foo.xlsx')
df.to_excel(writer, sheet_name='bar')
writer.save()

Pandas直接从数据库连接读取数据:

导入pyodbc 作为pd进口熊猫 sql\u query=inpunter sql查询: 使用pyodbc.connectmyconnection作为c: df=pd.read\u sqlsql\u查询,c 使用pd.ExcelWriter'foo.xlsx'作为编写器: df.to_excelwriter,工作表_name='bar'
这应该行得通

哪里不行?