我想使用复制命令从服务器计算机导入一个表到客户机计算机。我知道这对用户来说是一个反复出现的问题,但我还没有得到这个问题的答案,这也是一个不同的场景,我相信这是常见的。
使用下面的代码,我使用copy命令将Table从服务器复制到客户端计算机:
COPY (Select * from Table_Name) TO 'C:somedirectoryfile.csv' DELIMITER ',' CSV HEADER;
然而,我得到了以下内容
错误:拷贝文件的相对路径不允许
我的问题是:如何使用正确的COPY命令从Postgres的服务器计算机复制到客户端计算机。
Thank you in expected
- 请检查您的用户是否具有对目标文件夹的读/写访问权限
- 这是我发现的一个线程,看看它是否有帮助
https://dba.stackexchange.com/questions/158466/relative-path-for-psql-copy-filehttps://postgrespro.com/list/thread-id/1116997
- 尝试使用客户端公共IP访问网络
如何使用正确的COPY命令在Postgres中从服务器计算机复制到客户端计算机
你就是不能。
手册
中有明确说明带文件名的COPY指示PostgreSQL服务器直接从文件中读取或写入。该文件必须能够被PostgreSQL用户(服务器运行时的用户ID)访问,并且名称必须从服务器的角度指定。
(强调我的)
您需要使用psql
的copy
命令或任何其他在客户端工作的导出工具。