【发布时间】:2020-08-24 11:13:48
【问题描述】:
关于 postgresql,我需要将执行多次选择的循环的结果写入文件。
“复制到”似乎不允许附加到文件,而且很麻烦,因为不允许将分隔符设置为空字符串,我必须将分隔符设置为空格和制表符。
将 pgsql 的文本变量写入文件或在“复制到”期间附加到文件的任何其他想法。
还有一个问题是文件名不能是pgsql的变量,有解决办法吗?
【问题讨论】:
标签: postgresql copyto
关于 postgresql,我需要将执行多次选择的循环的结果写入文件。
“复制到”似乎不允许附加到文件,而且很麻烦,因为不允许将分隔符设置为空字符串,我必须将分隔符设置为空格和制表符。
将 pgsql 的文本变量写入文件或在“复制到”期间附加到文件的任何其他想法。
还有一个问题是文件名不能是pgsql的变量,有解决办法吗?
【问题讨论】:
标签: postgresql copyto
Postgres 提供文件写入(以下是我的代码的摘录)。
perform pg_catalog.pg_file_unlink(fn); -- I delete the file
perform pg_catalog.pg_file_write(fn,r,false); -- I accumulated the string to write into r.
adminpack 提供这些功能,必须安装为例如在adminpack installation 中描述。
上述函数既解决了用表达式给定的名称写入文件的问题,也解决了将表达式写入文件的问题。
在我的例子中,只给出文件写入的文件名:/var/lib/postgresql/9.5/main(我使用 ubuntu)。
【讨论】: