Postgresql - 用于保存文件的动态命名

时间:2016-10-22 16:55:04

标签: postgresql plpgsql

我正在尝试从表创建一个XML文件,并根据前缀和创建XML时的dttm使文件的名称成为动态。我的函数创建XML文件,但我无法弄清楚如何以下列格式动态命名文件:

xml1022161250.xml(XML | dttm.xml)

非常感谢任何帮助。功能如下:

div.inner { 
  display: inline-block; 
  vertical-align: top;
}

1 个答案:

答案 0 :(得分:3)

使用函数to_char()

select now(), to_char(now(), 'DDMMYYHH24MI');

              now              |  to_char   
-------------------------------+------------
 2016-10-22 19:52:57.033702+02 | 2210161952
(1 row)

在功能中,您必须使用dynamic sqlexecute()format(),例如:

create or replace function test()
returns void language plpgsql as $$
begin
    execute format(
        $f$
            copy (select 1) to 'c:/data/xml%s.xml'
        $f$, to_char(now(), 'DDMMYYHH24MI')
    );
end $$;