繁体   English   中英

Azure Synapse Serverless SQL 池 - 从引用字段中选择时出错

[英]Azure Synapse Serverless SQL Pool - Error while selecting from quoted fields

从 CSV 文件中选择时出现错误,该文件包含使用无服务器/按需 SQL 池在 Azure Synapse 中的引用字段。 数据在字段中包含字段终止符 (,),但它用双引号引起来。 即使我在数据中使用默认报价,我什至尝试明确指定 FIELDQUOTE。

我的文件包含如下数据

"number", "text"
1, "one"
2, "two"
11, "one, one"
12, "one, two"

我跑的SQL如下

SELECT
    *
FROM
    OPENROWSET(
        BULK 'https://mydatalake.dfs.core.windows.net/data/test_quoted_fields.csv',
        FORMAT = 'CSV',
        PARSER_VERSION = '2.0',
        FIELDQUOTE = '"',
        FIELDTERMINATOR = ',',
        HEADER_ROW = TRUE
    ) AS [result]

错误信息如下

Error handling external file: 'Quotes '' must be inside quoted fields at [byte: 10]. '. File/External table name: 'https://mydatalake.dfs.core.windows.net/data/test_quoted_fields.csv'

请注意,我正在使用Serverless/OnDemand SQL Pool运行查询。

有人可以帮忙吗? 谢谢

Synapse Studio 的屏幕截图

我确实尝试使用与您相同的文件,您只是在FIELDTERMINATOR = ','之后错过了一个,

尝试这个:

SELECT
    *
FROM
    OPENROWSET(
        BULK 'https://mydatalake.dfs.core.windows.net/data/test_quoted_fields.csv',
        FORMAT = 'CSV',
        PARSER_VERSION = '2.0',
        FIELDQUOTE = '"',
        FIELDTERMINATOR = ',',
        HEADER_ROW = TRUE
    ) AS [result]

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM