“这时候出乎意料。”

问题描述 投票:0回答:2

我正在尝试运行以下代码,但遇到了“此时出现意外”错误。

(echo COPY(选择ta.colA作为名称,ta.colB作为user_e,ta.colC作为user_n,ta.activation_dt,ta.creation_dt,MAX(tb.update_dt)作为updated_at,MAX(tb.login_dt)作为lastest_login, tc.colD 作为角色FROM tblA ta, tblB tb, tblC tc 其中 ta.id = tb.tb_id AND ta.tc_id = tc.id AND tc.colD <> 'Guest' GROUP BY ta.colA, ta.colB, ta。 colC、ta.activation_dt、ta.creation_dt、tc.colD 按 ta.colA、tc.colD^^^) 排序到 'E:\Details.csv' CSV DELIMITER ',' HEADER;) | psql -h localhost -p 8060 -U uname -d 数据库

请寻找一些见解。谢谢。

遇到的错误截图

windows postgresql cmd
2个回答
1
投票

尝试在 SQL 周围添加一些引号,并去掉括号:

echo "COPY ..." | psql -h localhost -p 8060 -U uname -d dbase

或使用

-c
选项:

psql -h localhost -p 8060 -U uname -d dbase -c "COPY ..."

我更喜欢

-c
,因为它适用于所有操作系统


0
投票

我也经历过同样的事情,以下是我为解决它所做的事情。我看到你的列名之一有特殊字符<>,就像我的情况一样,然后我只需删除它或将其替换为“_”即可。尝试一下

© www.soinside.com 2019 - 2024. All rights reserved.