尝试在 Postgres 11 中创建 csv 文件时,出现错误“权限被拒绝”我正在使用 Windows 10
我试过在不同网站上找到的不同方法都无济于事,我试过的方法是:使用Documents文件夹,使用D:、C:驱动器和在文件夹属性的安全部分添加权限。这些解决方案均无效。 我还尝试在服务(管理工具)中添加 Postgres 用户,但这也不起作用。
test=# \copy (SELECT * FROM person LEFT JOIN car ON car.id = person.car_id) TO 'c:/desktop' DELIMITER ',' csv HEADER;
我期待得到 csv 文件,但是,我得到:
c:/desktop: Permission denied
最佳答案
您需要提供文件名,而不是目录,例如TO 'c:/desktop/export.txt'
。
但在 Windows 上并没有真正的(物理)目录 c:\Desktop
,这是一个由 Windows 资源管理器模拟的“虚拟”目录。实际目录在当前用户的 %USERPROFILE%
目录中,例如c:\Users\cuet\Desktop
。
您需要确保指定有效的物理 路径,而不是“逻辑”路径。例如
TO 'c:/Users/cuet/Desktop/export.txt'
(假设您的 Windows 用户是 cuet
)
要为您的桌面找到正确的路径,您可以使用:
echo %USERPROFILE%\Desktop
在 Windows 命令提示符 (cmd.exe
) 中
关于postgresql - 尝试在 Postgres 中导出 CSV 时权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57155594/