> On 24/08/2023 09:50 CEST PG Doc comments form <nore...@postgresql.org> wrote:
>
> The following documentation comment has been logged on the website:
>
> Page: https://www.postgresql.org/docs/14/sql-createtrigger.html
> Description:
>
> In PostgreSQL 14 and 15 (previous versions I've not checked) is stated that
> CREATE TRIGGER statement is as follows:
>
> CREATE [OR REPLACE] [CONSTRAINT] TRIGGER
>
> however while CREATE TRIGGER works correctly the CREATE OR REPLACE TRIGGER
> construction leads to
>
> SQLSTATE[42601]: Syntax error: 7 ERROR:  syntax error at or near "TRIGGER"
>
> looks like CREATE TRIGGER doesn't support OR REPLACE, but documentation is
> then incorrect.

Works for me on 14.9 and 15.4:

        BEGIN;
        CREATE TABLE mytbl (f1 int);
        CREATE FUNCTION mytrigger()
          RETURNS trigger
          LANGUAGE plpgsql
          AS $$ BEGIN RETURN null; END $$;
        CREATE OR REPLACE TRIGGER mytrig
          BEFORE INSERT
          ON mytbl
          EXECUTE FUNCTION mytrigger();
        COMMIT;

CREATE OR REPLACE TRIGGER was added in 14.  Did you test on an older version?

--
Erik


Reply via email to