【发布时间】:2021-07-16 12:20:46
【问题描述】:
我正在使用以下命令:
copy (select so.name,
so.date_order,
sol.name,
sol.product_Id,
sol.product_uom_qty ,
ai.number,
ai.date_invoice ,
so.amount_total ,
so.amount_tax
from sale_order so ,
sale_order_line sol ,
account_invoice ai
where so.id = sol.order_id
and so.name = ai.origin
and ai.state='open')
to '/home/ekodev/Documents/test1.csv' delimiter ',' csv header;
但是,它给出了以下错误:
********** Error **********
ERROR: must be superuser to COPY to or from a file
SQL state: 42501
Hint: Anyone can COPY to stdout or from stdin. psql's \copy command also works for anyone.
即使我更改了权限ekodev@partner:~/Documents$ sudo chmod a+rwX /home/ekodev/ /home/ekodev/Documents/ /home/ekodev/Documents/test1.csv
它仍然对我不起作用。
有人知道问题出在哪里吗?
【问题讨论】:
-
\copy (select .. FROM table) to '/home/ekodev/Documents/test1.csv' delimiter ',' csv header; -
这是一个文件系统权限的东西。解决它的最简单方法是复制到/从
/tmp/目录。 -
@unique_id 我在哪里写这个命令 \copy (select .. FROM table) to '/home/ekodev/Documents/test1.csv' delimiter ',' csv header;它也给出错误。我从来没有用过 psql
-
@Shubhambatra 通过 psql 命令行实用程序
-
@Shubhambatra btw,你如何访问 postgres 数据库?
标签: postgresql ubuntu