public inbox for [email protected]
help / color / mirror / Atom feedFrom: Pavel Stehule <[email protected]>
To: Igor Korot <[email protected]>
Cc: David G. Johnston <[email protected]>
Cc: Tom Lane <[email protected]>
Cc: Adrian Klaver <[email protected]>
Cc: pgsql-generallists.postgresql.org <[email protected]>
Subject: Re: Determine server version from psql script
Date: Sun, 23 Mar 2025 20:17:02 +0100
Message-ID: <CAFj8pRB5d=0WQYyK7Nho7XY2qY+rvgwzqSmWpVOYBdvC9dcDXw@mail.gmail.com> (raw)
In-Reply-To: <CA+FnnTx5n=yCw4+qcRuv-c7ECf=K=tao7j_k=dDp5nPUMJ7t_A@mail.gmail.com>
References: <CA+FnnTyWEsYi=_QTeSXoGXd7Fkd8C7_AnCc5=hho-DZF9_iunQ@mail.gmail.com>
<[email protected]>
<CA+FnnTz9-cjBDf3mC9fx_FCtZGDTneF9=w8LpTRdwCfxHN86yw@mail.gmail.com>
<CAKFQuwZGjMYbP0nWYb2+-D1a_dNg6b-mDhDC96Am-c2MZOYTNw@mail.gmail.com>
<CA+FnnTy2Lk+K8t2uKwc1cAnCm6+RTb72eVRxt9+Y8y+C=sUeyA@mail.gmail.com>
<[email protected]>
<CA+FnnTztyXpMxEiKTZhxMtcQ8Nm6D+M1jbfJFfkJYU9dyvTeLg@mail.gmail.com>
<CAKFQuwZ3-wmpyUEdHUaL7H9RHp-FTxUJjVL3L5A0jqA2bbHXYw@mail.gmail.com>
<CAKFQuwb6vf1L2O8X_6Qu2VNq9iUhCjbXTc=51702h7yo4dH=8w@mail.gmail.com>
<CA+FnnTx5n=yCw4+qcRuv-c7ECf=K=tao7j_k=dDp5nPUMJ7t_A@mail.gmail.com>
Hi
ne 23. 3. 2025 v 19:31 odesílatel Igor Korot <[email protected]> napsal:
> Hi,
>
> [code]
> SELECT current_setting('server_version_num')::int > 130000 as v13
> \gset
> \if :v13
> CREATE OR REPLACE TRIGGER playersinleague_insert AFTER INSERT ON
> playersinleague WHEN new.current_rank IS NULL
> BEGIN
> UPDATE playersinleague SET current_rank = 1 + (SELECT
> coalesce( max( current_rank ), 0 ) FROM playersinleague WHERE id =
> new.id) WHERE rowid = new.rowid;
> psql:draft_pg.sql:44265: ERROR: syntax error at or near "TRIGGER"
> LINE 1: CREATE OR REPLACE TRIGGER playersinleague_insert AFTER INSER...
> ^
> [/code]
>
> What am I doing wrong?
>
the test should be
SELECT current_setting('server_version_num')::int > =140000 as v14
\if :v14
...
CREATE OR REPLACE is supported from PostgreSQL 14
https://www.postgresql.org/docs/14/sql-createtrigger.html
Regards
Pavel
>
> Thank you.
>
>
> On Sun, Mar 23, 2025 at 12:53 PM David G. Johnston
> <[email protected]> wrote:
> >
> > On Sunday, March 23, 2025, David G. Johnston <[email protected]>
> wrote:
> >>
> >> On Sunday, March 23, 2025, Igor Korot <[email protected]> wrote:
> >>>
> >>>
> >>> 2. Is there a way to do CREATE TRIGGER IF NOT EXIST for the earlier
> version?
> >>
> >>
> >> No. You have to drop the trigger if it does exist and then create the
> new one.
> >
> >
> > Well, you can always query the catalogs directly to answer the question
> “does this trigger exist”.
> >
> > David J.
> >
>
>
>
view thread (14+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: Determine server version from psql script
In-Reply-To: <CAFj8pRB5d=0WQYyK7Nho7XY2qY+rvgwzqSmWpVOYBdvC9dcDXw@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox