Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 雪花连接器SQL编译错误:超出了列表中表达式的最大数量,最多应为16384_Python_Snowflake Cloud Data Platform - Fatal编程技术网

Python 雪花连接器SQL编译错误:超出了列表中表达式的最大数量,最多应为16384

Python 雪花连接器SQL编译错误:超出了列表中表达式的最大数量,最多应为16384,python,snowflake-cloud-data-platform,Python,Snowflake Cloud Data Platform,乡亲们 我正在尝试使用Python将数据从SQL Server插入雪花表。一般来说,它可以工作,但如果我想插入更大的数据块,它会给我一个错误: 雪花连接器SQL编译错误:超出了列表中表达式的最大数量,最多应为16384 我正在为Python使用雪花连接器。因此,如果您想一次插入16384行,它就可以工作。我的桌子上有超过一百万条记录。我不想使用csv文件。 谢谢大家! 这不是将数据加载到Snowflake中的理想方法,但由于您指定不希望创建CSV文件,因此可以研究将数据加载到panda数据帧中,

乡亲们

我正在尝试使用Python将数据从SQL Server插入雪花表。一般来说,它可以工作,但如果我想插入更大的数据块,它会给我一个错误:

雪花连接器SQL编译错误:超出了列表中表达式的最大数量,最多应为16384

我正在为Python使用雪花连接器。因此,如果您想一次插入16384行,它就可以工作。我的桌子上有超过一百万条记录。我不想使用csv文件。
谢谢大家!

这不是将数据加载到Snowflake中的理想方法,但由于您指定不希望创建CSV文件,因此可以研究将数据加载到panda数据帧中,然后使用python连接器中的
write_pandas
函数,这将(在幕后)实现利用平面文件和
复制到
语句中,这是将数据导入Snowflake的最快方法。此方法的问题可能是pandas在运行脚本的机器上需要大量内存。不过,有一个
chunk\u size
参数,所以您可以用它来控制它


这不是将数据加载到Snowflake中的理想方法,但由于您指定不希望创建CSV文件,因此可以研究将数据加载到panda数据帧中,然后使用python连接器中的
write_pandas
函数,该函数将(在幕后)执行利用平面文件和
复制到
语句中,这是将数据导入Snowflake的最快方法。此方法的问题可能是pandas在运行脚本的机器上需要大量内存。不过,有一个
chunk\u size
参数,所以您可以用它来控制它


我能够使用sqlalchemy和pandas插入16k REC,如下所示:

pandas_df.to_sql(sf_table, con=engine, index=False, if_exists='append', chunksize=16000)

其中引擎是sqlalchemy。创建引擎(…)

我能够使用sqlalchemy和pandas插入超过16k个记录,如下所示:

pandas_df.to_sql(sf_table, con=engine, index=False, if_exists='append', chunksize=16000)

引擎是sqlalchemy。创建引擎(…)

谢谢你,迈克。我试过了。这给了我另一个错误,但我认为这是正确的做法。谢谢你,迈克。我试过了。这给了我另一个错误,但我认为这是正确的做法。没错,但如果你需要插入超过一百万条记录,这将需要很多时间。我最近找到了解决方案。你的解决方案是什么?从这里开始:是的,但是如果你需要插入超过一百万条记录,这将需要很多时间。我最近找到了解决方案。您的解决方案是什么?从这里: