有没有办法在Windows cli中使用’COPY’命令(PostgreSQL)?

Is there a way to use 'COPY' command(PostgreSQL) in windows cli?

尝试在Windows CLI命令中使用PostgreSQL的"copy"命令:

1
COPY myTable FROM VALUE.txt (DELIMITER('|'));

在bin目录中找不到"copy"可执行文件。

您能告诉我如何在CLI中运行"copy"命令吗?

补充:我的Windows应用程序将使用"复制"功能。需要直接从应用程序运行它。

事先谢谢。

我可以通过以下方法看到我需要的结果。

1
2
3
4
psql.exe -f copy.sql -p 5433 -U USER -s postgres

copy.sql
\copy TARGET_TABLE FROM SOURCE.txt (DELIMITER('#'));


您有正确的命令(COPY),但是如果您想从Windows命令行使用COPY命令,则需要开始与postgres的交互会话。

1
psql -U username yourdb

这将使您的提示看起来如下:

1
yourdb=#

现在您可以使用COPY命令,它应该可以工作:

1
COPY myTable FROM VALUE.txt (DELIMITER('|'))

您遇到的问题是,COPY不是Windows可执行程序,它是一个只有postgres才能理解的postgres命令。


要加载JSON,请使用以下命令-从"~specifypath/data.json"复制mytable(data);

数据是要在其中推送JSON的列