所以我有一个包含数据的SQL文件。我需要导入哪些库以及为了将数据导出到Excel文件需要写什么?
另外请注意,我这样做的是Python。
答案 0 :(得分:1)
你是什么意思'你有一个sql文件'?你的意思是SQL Server?如果是这样,请尝试这样的事情。
import pyodbc
import pandas as pd
cnxn = pyodbc.connect(< db details here >)
cursor = cnxn.cursor()
script = """
SELECT * FROM my_table
"""
cursor.execute(script)
columns = [desc[0] for desc in cursor.description]
data = cursor.fetchall()
df = pd.DataFrame(list(data), columns=columns)
writer = pd.ExcelWriter('foo.xlsx')
df.to_excel(writer, sheet_name='bar')
writer.save()
或者,您可以像这样创建查询。
import pyodbc
import pandas as pd
cnxn = pyodbc.connect(< db details here >)
script = """
SELECT * FROM my_table
"""
df = pd.read_sql_query(script, cnxn)
这是连接数据的另一种方法。
import pypyodbc
cnxn = pypyodbc.connect("Driver={SQL Server Native Client 11.0};"
"Server='ServerName';"
"Database='DatabaseName';"
"Trusted_Connection=yes;")
#cursor = cnxn.cursor()
#cursor.execute("select * from Actions")
cursor = cnxn.cursor()
cursor.execute('SELECT * FROM Actions')
for row in cursor:
print('row = %r' % (row,))
我已经向您展示了如何将所有内容转储到Excel中。
答案 1 :(得分:0)
将数据导出到文件登录到sqlite shell并执行以下操作
sqlite> .mode csv
sqlite> .headers on
sqlite> .output results.csv
sqlite> select * from cm_data limit 3;
sqlite>