如何在复制命令PSQL中将变量添加到路径字符串中

时间:2019-07-12 09:47:51

标签: postgresql psql

我正在使用psql运行.sql文件,将数据从csv文件复制到Postgres,但是该文件夹包含csv文件每天都在更改,因此我想在路径代码中添加变量

这是我的代码

delete from table1;
delete from table2;
delete from table3;
\copy table1 FROM 'D:\tamlam\' + convert(date,getdate()) + '\file1.csv' DELIMITER ',' CSV HEADER QUOTE '"' NULL '';

1 个答案:

答案 0 :(得分:0)

使用PROGRAM选项。

请参见this documentation如何在Windows批处理中以所需格式获取日期。

将其放在最后执行TYPE %filenamevariable%的脚本中。假设脚本名为data_gen。然后,您可以这样做

\COPY table1 FROM PROGRAM '\scriptpath\data_gen'

对于Unix用户,它更简单,带有选项的date命令可以生成格式的日期并设置变量。然后只需在程序结束时进行cat $filenamevariable