使用下面的代码,我试图在MSSQL表中插入n个数据帧。在for file in os.listdir():
print('# Inserting ' + file + ' . . .')
df = pd.read_csv(file)
df = df.fillna('NULL')
if(len(df)>1):
dfs = partDF(df , lim)
for k in dfs.keys():
print('\t' + str(int(k.split('t')[1])+1) + ' / ' + str(len(dfs.keys()))+ '\t')
aux = dfs[k]
insert2SQL(aux, table)
del(aux)
print(' OK :)')
del(df, dfs)
partDF()函数将数据帧拆分为较小的帧,以便每个帧的长度不超过1000行。这些数据帧在字典中返回,字典的键名为t0,t1,t1。。。tn.
注意,为了安全起见,我直接使用了dict.keys()方法中的密钥名。在
上面的代码在循环中插入第一个数据帧后引发keyror0。在
^{pr2}$
但是,当我执行下面的代码时,我只是打印数据帧的头,没有遇到这样的错误:for file in os.listdir():
df = pd.read_csv(file)
df = df.fillna(