在 Snowflake PUT 命令中添加空格转义序列

Vis*_*sad 5 snowflake-cloud-data-platform snowsql

我一直在尝试使用 PUT 将文件加载到 Snowflake 中,但由于文件夹名称中存在空格而出现错误。

PUT file://Y:/AMI Control/file.csv  @MS_FILE_LND
AUTO_COMPRESS=FALSE
Run Code Online (Sandbox Code Playgroud)

我尝试过使用 \ 转义序列并将整个路径括在引号中,但它似乎不起作用。

小智 7

这会起作用

对于 Linux/Mac:

PUT 'file:///AMI Control/file.csv'  @MS_FILE_LND AUTO_COMPRESS=FALSE
Run Code Online (Sandbox Code Playgroud)

对于 Windows:

PUT 'file://Y:\AMI Control\file.csv'  @MS_FILE_LND AUTO_COMPRESS=FALSE
Run Code Online (Sandbox Code Playgroud)


小智 6

Windows 版本不正确。正确的 PUT 语句是:

PUT 'file://Y:/AMI Control/file.csv' @MS_FILE_LND AUTO_COMPRESS=FALSE

雪花文档说:

“URI 可以用单引号括起来,这允许在目录和文件名中使用特殊字符,包括空格;但是,对于所有受支持的操作系统,驱动器和路径分隔符是正斜杠 (/)(例如“file://”) C:/temp/load data'(Windows 中包含名为 load data 的目录的路径)。”

https://docs.snowflake.com/en/sql-reference/sql/put.html