在 Snowsql 中,当我尝试 'Put' 一个文件时,我收到以下错误消息:

In Snowsql, when I attempt to 'Put' a file I get the following error message:

"'put' 不是内部或外部命令,也不是可运行的程序或批处理文件。"

我正在输入以下内容:"put file://C:\FolderName\FileName.csv"

我需要做的就是从我的 C 盘上传一个 csv 文件到 Snowflake 云。我认为这很容易,但我终究无法弄清楚为什么我总是收到这条消息。

您能否展示执行此命令之前的步骤,以展示您是如何登录到 Snowsql 的?此命令需要在 Snowsql 中 运行 并且错误消息似乎表明您的系统没有看到此命令。

@JNevill 是对的 - PUT 命令从本地获取文件(正如您所识别的)并将其放置在 Snowflake 内部阶段。您可以在 Snowflake 中创建这些阶段之一,或者为您的用户或 table(s) 使用一些自动配置的阶段。因此,如果您已经创建了 table "My_tableName",您可以使用引用“@My_tableName”的内部阶段,因此:

snowsql> put file://C:\FolderName\FileName.csv @My_tableName

文件加载到舞台后,您可以使用 COPY INTO 命令将数据加载到 table: https://docs.snowflake.net/manuals/sql-reference/sql/copy-into-table.html#loading-files-from-an-internal-stage

首先,您需要从命令提示符连接到 SnowSQL,然后,您将能够执行 PUT/GET 命令。

C:> snowsql -a snowflake_accountname -u snowflake_username

snowsql> 使用 Database_name;

snowsql> 使用模式 SCHEMA_NAME;

snowsql> 使用 WAREHOUSE WAREHOUSE_NAME;

snowsql> ls @My_Stage_NAME

snowsql> put file://C:\FolderName\FileName.csv @My_Stage_NAME