【发布时间】:2021-09-16 20:51:06
【问题描述】:
在 postgresql 9.3.1 中,当使用psql 命令交互式开发查询时,最终结果有时是将查询结果写入文件:
boron.production=> \o /tmp/output
boron.production=> select 1;
boron.production=> \o
boron.production=> \q
$ cat /tmp/output
?column?
----------
1
(1 row)
这很好用。但是我怎样才能让 查询本身 连同查询结果一起写入文件?
我尝试给 psql 提供--echo-queries 开关:
-e, --echo-queries
Copy all SQL commands sent to the server to standard output as well.
This is equivalent to setting the variable ECHO to queries.
但这总是回显到标准输出,而不是我用 \o 命令提供的文件。
我也尝试过--echo-all 开关,但它似乎无法回显交互式输入。
使用命令编辑,我可以在前面加上\qecho 重复查询。这行得通,但很乏味。
有什么方法可以引导交互式 psql 会话将查询和查询输出写入文件?
【问题讨论】:
-
\o将查询 result 输出到输出文件...我不知道该怎么做。您可以使用\qecho... 将文本放入输出中,也可以使用重定向批量运行 SQL。然后 -e 将起作用。
标签: postgresql psql