Postgres在代码块中显示命令

时间:2015-11-13 16:45:18

标签: sql postgresql plpgsql

如何在代码块中使用show命令?

我尝试了几种方法,但我得到的只是一个错误

do $$
begin
show enable_mergejoin; -- I need to to print this value (on/off)
end $$

2 个答案:

答案 0 :(得分:1)

show会返回结果。在PL / pgSQL中,你不能“只”运行一个语句,语句的结果必须存储在一个变量中:

do $$
declare
  l_value text;
begin
  show enable_mergejoin into l_value; -- retrieve and store the value
  raise notice '%', l_value; -- print the content
end $$
;

答案 1 :(得分:0)

其他解决方案是使用administrative functions current_settingset_setting。这些函数访问与SHOWSET命令相同的代码:

do $$
begin
   raise notice '%', current_seting('enable_mergejoin');
end$$