我正在跟踪一个关于Azure Synapse分析的在线视频教程。教员使用了以下脚本:
SELECT TOP 10 *
FROM
OPENROWSET(
BULK 'taxi/raw/trip_type.tsv',
DATA_SOURCE ='nyc_taxidata',
FORMAT='CSV',
PARSER_VERSION='2.0',
HEADER_ROW=TRUE,
FIELDTERMINATOR = '\t'
) AS trip_type;我的问题是,当格式为FORMAT='CSV'时,脚本为什么会工作?
此外,当我尝试使用FORMAT='TSV'时,我得到了以下错误消息:
Parser version '2.0' is not supported for provided format 'TSV'.发布于 2022-07-29 02:33:20
CSV代表Comma Separated Values,这意味着默认情况下FIELDTERMINATOR是逗号。但这并不意味着我们不能使用任何其他分隔符。分隔符可以是任何字符,如|、\n、:等,就像在您的例子中是\t一样。因此,无论是,还是其他任何文件,文件都只会被称为CSV,并且只有DELIMITER会改变。
进入你问题的第二部分。
CSV解析器版本1.0是默认的,功能丰富。版本2.0是为性能而构建的,并不支持所有选项和编码。
在代码的第7行使用PARSER_VERSION='1.0',您的问题将得到解决。
https://stackoverflow.com/questions/73159870
复制相似问题