On 2/21/21 5:26 PM, Julien Rouhaud wrote:
On Mon, Feb 22, 2021 at 7:19 AM Ron <ronljohnso...@gmail.com> wrote:
Thus, I want to add a bit to the top of the script, something like this:

\if :DBNAME = postgres
      echo "must not run in postgres"
      exit
\endif

However, I can't seem to find the magic sauce.
You have to use a dedicated variable.  Something like

SELECT :'DBNAME' = 'postgres' AS is_postgres \gset

That works...

\if :is_postgres
[...]

That *almost* works,

My script:
$ cat test_pg.sql
SELECT :'DBNAME' = 'postgres' AS is_postgres \gset
\echo :is_postgres
\if :is_postgres
    \echo 'connected to postgres'
    exit
\else
    \echo 'not connected to postgres'
\endif

The output:
$ psql12 -f test_pg.sql
t
connected to postgres
got here
psql:test_pg.sql:15: ERROR:  syntax error at or near "exit"
LINE 1: exit



--
Angular momentum makes the world go 'round.

Reply via email to