Postgres中嵌套的SQL脚本和变量

时间:2018-10-08 19:44:26

标签: sql bash postgresql

我需要从Oracle迁移到Postgres。

在Oracle中,我有.sql文件以这种方式调用嵌套的.sql文件(每个都有输入和输出参数):nested sql scripts and variables

在Postgres中寻找类似的解决方案,我发现了这一点: How to run postgres sql script from another script?

但是解决方案会发生什么:\i other_script.sql

我可以将输入参数传递给它吗? (如果是,如何?)我可以从中返回参数吗? (如果可以,怎么办?)

还是other_script.sql和calling.script共享变量?

或者没有等效的输入/输出参数解决方案。并且变量不是在两个.sql文件之间共享吗?

1 个答案:

答案 0 :(得分:0)

psql会话变量基于 session ,因此您可以在脚本内设置任何psql变量,也可以在脚本外读取此变量。

\set myvar some value
select :'myvar';

您可以在psql documentation中阅读更多内容。