我正在使用Pandas to_sql加载仅约6k行数据的CSV。我有一个非常大的Azure Synapse DW,具有足够的容量,但是我有一个问题,它将加载约1.5k行,然后因内存不足错误而失败:
sqlalchemy.exc.ProgrammingError: (pyodbc.ProgrammingError) ('42000','[42000] [microsoft][ODBC Driver 13 for SQL Server][SQL Server]112007;Exceeded the memory limit of 20 MB per session for prepared statements. Reduce the number or sizeof the prepared statements. (112007) (SQLExecDirectW)')
我的代码如下:
df_table.to_sql('Test_Name',engine,if_exists='replace',dtype={col_name: VARCHAR(length=100) for col_name in df_table},index=False,chunksize=1000)
我试图设置一个块大小,但似乎没有影响。为什么要用这么小的数据集挣扎,我如何加载完整的csv文件?