如何在pgadmin4中使用\copy命令进行postgresql数据导入和导出

5

我希望使用\copy命令来创建相对路径的csv文件。我使用了一个查询将测试表中的数据制作成名为test.csv的csv文件。

\copy (SELECT * FROM test) to './test.csv' with csv

但是在postgresql pgadmin4中,它将\copy命令显示为语法错误(该单词下方有一个下划线),并显示以下类似消息。

ERROR:  syntax error at or near "/"
LINE 2: /copy (SELECT * FROM test) to './persons_client.csv' with cs...
        ^
********** Error **********

ERROR: syntax error at or near "/"
SQL state: 42601
Character: 2
我该如何解决这个问题?
2个回答

11

\copy 是默认命令行接口psql 的元命令。您不能在 pgAdmin4(或任何其他SQL客户端)的“查询工具”中运行它。请从 psql 中运行它。(您可以在现代的 pgAdmin4 中打开“PSQL 工具”)。

psql 的 \copy 是 SQL 命令COPY 的客户端封装程序。如果您有访问数据库服务器(和必要的权限)的权限,则可以使用 SQL COPY


你可以在现代的pgAdmin4中打开“PSQL工具”,怎么做呢? - CompEng88

5
我解决这个问题的方法是执行以下命令:
psql=# copy tmp from '/path/to/file.csv' with delimiter ',' csv header encoding 'windows-1251';

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接