Re: Call a Normal function inside a Trigger Function

From: FOUTE K(dot) Jaurès <jauresfoute(at)gmail(dot)com>
To: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
Cc: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, PostgreSQL General <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Call a Normal function inside a Trigger Function
Date: 2023-04-16 19:22:27
Message-ID: CAHQ1jfeZJKtSeKKNJqE_EieW+yeAZ0xaDHuHyodhrBwMnJX39w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Thanks @Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
It's clear for me now.

On Sun, 16 Apr 2023, 20:13 Adrian Klaver, <adrian(dot)klaver(at)aklaver(dot)com> wrote:

> On 4/16/23 11:47, FOUTE K. Jaurès wrote:
> > Can I have an example please? Or a link
>
> create table trg_test (id integer, fld_1 varchar, fld_2 boolean);
>
>
> CREATE OR REPLACE FUNCTION public.child_fnc(token character varying)
> RETURNS void
> LANGUAGE plpgsql
> AS $function$
> BEGIN
> IF token = 'yes' THEN
> RAISE NOTICE 'Child';
> END IF;
> END;
> $function$
> ;
>
>
> CREATE OR REPLACE FUNCTION public.parent_fnc()
> RETURNS trigger
> LANGUAGE plpgsql
> AS $function$
> BEGIN
> RAISE NOTICE 'Id is %', NEW.id;
> RAISE NOTICE 'Fld_1 is %', NEW.fld_1;
> RAISE NOTICE 'Parent';
> PERFORM child_fnc('yes');
> RETURN NEW;
> END;
> $function$
> ;
>
> create trigger test_trg before insert on trg_test for each row execute
> function parent_fnc();
>
> insert into trg_test values (1, 'dog', 'f');
> NOTICE: Id is 1
> NOTICE: Fld_1 is dog
> NOTICE: Parent
> NOTICE: Child
> INSERT 0 1
>
> >
> > On Sun, 16 Apr 2023, 17:08 Pavel Stehule, <pavel(dot)stehule(at)gmail(dot)com
> > <mailto:pavel(dot)stehule(at)gmail(dot)com>> wrote:
> >
> > Hi
> >
> >
> > ne 16. 4. 2023 v 16:15 odesílatel FOUTE K. Jaurès
> > <jauresfoute(at)gmail(dot)com <mailto:jauresfoute(at)gmail(dot)com>> napsal:
> >
> > Hello,
> >
> > Is it possible to call a function inside a trigger function ?
> > Any idea or link are welcome. Thanks in advance
> >
> >
> > sure, there is not any limit.
> >
> > Regards
> >
> > Pavel
> >
> >
> > Best Regards
> > --
> > Jaurès FOUTE
> >
>
> --
> Adrian Klaver
> adrian(dot)klaver(at)aklaver(dot)com
>
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Bryn Llewellyn 2023-04-16 21:41:31 Re: PL/pgSQL's "open cur for execute" provides workarouned... Re: cursors with prepared statements
Previous Message Pavel Stehule 2023-04-16 19:13:20 Re: Call a Normal function inside a Trigger Function