【发布时间】:2020-11-13 22:10:47
【问题描述】:
我这里有一个 python 脚本:
import pyodbc
import pandas as pd
from sqlalchemy import create_engine
import csv
df = pd.read_sql("""script_generator""", conn)
for count, row in df.iterrows():
row.to_csv('generatedfile{}.sql'.format(count), index=False, index_label=False, quoting=csv.QUOTE_NONE, escapechar=' ')
当我运行它时,它会创建以 sql 格式设置的单独的 csv 文件。 generatefile2 中的输出如下所示:
2
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'table1') AND type in (N'U'))
BEGIN
PRINT 'DROPPING TABLE [dbo].[table1]....'
DROP TABLE [dbo].[table1];
END;
其余文件具有相同的格式。 有什么办法可以更改我的代码以摆脱代码开头的“2”?由于它,它不会在 SQL 中正常运行。由于某种原因 index_label=False 不会摆脱它。 非常感谢!
【问题讨论】:
-
你知道吗,这可能是一个错误!我确实重现了问题。奇怪的默认
index=True和index_label=None在 .csv 中以逗号开头。考虑在GitHub pandas dev page 上提醒作者。请务必包含带有可运行代码和小数据示例的reproducible example。