Re: Script generation through psql

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Mauricio Fernandez <mmauricio(dot)fernandez(at)gmail(dot)com>
Cc: Pgsql-admin <pgsql-admin(at)lists(dot)postgresql(dot)org>
Subject: Re: Script generation through psql
Date: 2025-10-22 10:54:13
Message-ID: CAKFQuwbL+S0kQiSPt_SzXbOYf8FtrPLLTnUUHq_y1ooyXOffDQ@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On Tuesday, October 21, 2025, Mauricio Fernandez <
mmauricio(dot)fernandez(at)gmail(dot)com> wrote:
>
>
> 2. If in the psql script I want to pass variable values from an anonymous
> block to the rest of the script, how can I proceed?. For example
>
> DO $$
> DECLARE
> vl_id integer;
> BEGIN
> -- vl_id is set inside the procedure
> call my_procedure(*vl_id*);
> END $$;
>

You’d have to do something like:

Execute format(‘set script.varname=%L’, value)

Within the DO block then you can do:

Select current_value(‘script.varname’) as psql_var \gexec

Outside of it.

A temporary table works too.

David J.

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Mauricio Fernandez 2025-10-22 11:59:26 Re: Script generation through psql
Previous Message Roland Müller 2025-10-22 04:23:45 Re: Script generation through psql