gpt4 book ai didi

python - 雪花连接器错误: 001003 (42000): SQL compilation error (syntax error)

转载 作者:行者123 更新时间:2023-12-02 18:26:33 25 4
gpt4 key购买 nike

我正在尝试将 pandas 数据帧加载到 Snowflake 表中。

这是我的 SF 表 DDL:

create or replace TABLE MY_TABLE (
WEBSITE VARCHAR(16777216),
ORGANIZATION_NAME VARCHAR(16777216),
ORGANIZATION_NAME_URL VARCHAR(16777216),
IPO_STATUS VARCHAR(16777216),
FOUNDED_DATE VARCHAR(16777216),
FOUNDED_DATE_PRECISION VARCHAR(16777216),
TOTAL_FUNDING_AMOUNT VARCHAR(16777216),
TOTAL_FUNDING_AMOUNT_CURRENCY VARCHAR(16777216),
TOTAL_FUNDING_AMOUNT_CURRENCY_USD VARCHAR(16777216),
LAST_FUNDING_AMOUNT VARCHAR(16777216),
LAST_FUNDING_AMOUNT_CURRENCY VARCHAR(16777216),
LAST_FUNDING_AMOUNT_CURRENCY_USD VARCHAR(16777216),
LAST_FUNDING_DATE VARCHAR(16777216),
INDUSTRIES VARCHAR(16777216),
INDUSTRY_GROUPS VARCHAR(16777216),
LAST_FUNDING_TYPE VARCHAR(16777216),
IT_SPEND VARCHAR(16777216),
IT_SPEND_CURRENCY VARCHAR(16777216),
IT_SPEND_CURRENCY_USD VARCHAR(16777216)
);

这是我的数据框的结构:

Data columns (total 19 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Website 3924 non-null object
1 Organization Name 3924 non-null object
2 Organization Name URL 3924 non-null object
3 IPO Status 3924 non-null object
4 Founded Date 3837 non-null object
5 Founded Date Precision 3837 non-null object
6 Total Funding Amount 2397 non-null float64
7 Total Funding Amount Currency 2397 non-null object
8 Total Funding Amount Currency (in USD) 2397 non-null float64
9 Last Funding Amount 2259 non-null float64
10 Last Funding Amount Currency 2259 non-null object
11 Last Funding Amount Currency (in USD) 2259 non-null float64
12 Last Funding Date 2612 non-null object
13 Industries 3894 non-null object
14 Industry Groups 3894 non-null object
15 Last Funding Type 2612 non-null object
16 Aberdeen - IT Spend 1576 non-null float64
17 Aberdeen - IT Spend Currency 1627 non-null object
18 Aberdeen - IT Spend Currency (in USD) 1576 non-null float64

每雪花的 documentation ,我编写了以下代码来帮助我将数据帧写入数据库:

success, nchunks, nrows, _ = write_pandas(conn, 
df,
"MY_DB.MY_SCHEMA.MY_TABLE",
quote_identifiers=False)

print(str(success) + ', ' + str(nchunks) + ', ' + str(nrows))

我遇到的问题如下:

ProgrammingError: 001003 (42000): SQL compilation error:
syntax error line 1 at position 133 unexpected 'Name'.

我已经使用此函数来摄取其他数据帧,并且过去没有出现任何问题(所以我知道我的连接/连接器正在工作) - 也许我的数据有问题或者我的设置方式有问题雪花表?我有一些 NaN 值..这会是一个问题吗?

以下是数据摘录:

enter image description here

我还查看了其他答案,例如 herehere但它们与我的问题没有直接关系。我对 Snowflake 和 SQL 比较陌生,因此我们将不胜感激任何解决此问题的帮助!

最佳答案

您的 df 列名称中有空格,您必须将 quote_identifiers 参数设置为 true :

success, nchunks, nrows, _ = write_pandas(conn, 
df,
"MY_DB.MY_SCHEMA.MY_TABLE",
quote_identifiers=True)

虽然我不确定雪花是否能够将其映射到您的列,其中它们有下划线而不是空格

关于python - 雪花连接器错误: 001003 (42000): SQL compilation error (syntax error),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70067989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com