【发布时间】:2017-07-13 06:36:01
【问题描述】:
这是this answer 针对“Save PL/pgSQL output from PostgreSQL to a CSV file”提出的后续问题。
我需要使用 psql 的\copy command 编写一个客户端 CSV 文件。一个班轮工作:
db=> \copy (select 1 AS foo) to 'bar.csv' csv header
COPY 1
但是,我有跨越几行的长查询。我不需要显示查询,因为我似乎无法在没有解析错误的情况下扩展这一行:
db=> \copy (
\copy: parse error at end of line
db=> \copy ( \\
\copy: parse error at end of line
db=> \copy ("
\copy: parse error at end of line
db=> \copy "(
\copy: parse error at end of line
db=> \copy \\
\copy: parse error at end of line
是否可以将\copy 用于跨多行的查询?我在 Windows 上使用 psql。
【问题讨论】:
-
你可能不得不转义换行符?
-
@Falmarri 我在我的问题中提出了一些常见的转义尝试,但是从文档“psql 的 ... 反斜杠转义不适用”到
\copy,这让事情变得很困难。跨度> -
我已经给她发了一个答案:stackoverflow.com/a/44043716/24105,这是获取多行的迂回方式。
标签: postgresql client-side export-to-csv psql