From: | Pavel Stehule <stehule(at)kix(dot)fsv(dot)cvut(dot)cz> |
---|---|
To: | "Karl O(dot) Pinc" <kop(at)meme(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: plpgsql trigger function with arguments |
Date: | 2004-03-03 06:30:03 |
Message-ID: | Pine.LNX.4.44.0403030727080.29099-100000@kix.fsv.cvut.cz |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
hello
You have to write functions without params. Params for triggers are
accessed not via function params, but via special variable TG_ARGV[]
http://archives.postgresql.org/pgsql-general/2002-03/msg01021.php
regards
Pavel Stehule
On Tue, 2 Mar 2004, Karl O. Pinc wrote:
> I'm sure I saw something like this on the postgresql web
> site but the the search function is down in the documentation
> area.
>
> I'm unable to pass a function arguments in a CREATE
> TRIGGER statement.
>
> What am I doing wrong here?
>
> CREATE FUNCTION pregs_func (VARCHAR(15))
> RETURNS trigger
> LANGUAGE plpgsql
> AS '
> DECLARE
> trigger_type ALIAS FOR $1;
>
> BEGIN
> IF trigger_type = ''insert'' THEN
> ...
> END IF;
> END;
> ';
>
> CREATE TRIGGER pregs_insert_trigger
> AFTER INSERT
> ON pregs FOR EACH ROW
> EXECUTE PROCEDURE pregs_func('insert');
>
> CREATE TRIGGER pregs_update_trigger
> AFTER UPDATE
> ON pregs FOR EACH ROW
> EXECUTE PROCEDURE pregs_func('update');
>
> The CREATE TRIGGER statements return:
> ERROR: CreateTrigger: function pregs_func() does not exist
>
>
> I tried doing variations on:
> create trigger pregs_insert_trigger after insert on pregs
> for each row execute procedure
> pregs_func (cast('insert' as varchar(15)));
>
> thinking that I don't have the right function because the
> datatypes don't match, but I get:
> ERROR: parser: parse error at or near "cast" at character 106
>
> PostgreSQL 7.3.
>
> Thanks,
>
> Karl <kop(at)meme(dot)com>
> Free Software: "You don't pay back, you pay forward."
> -- Robert A. Heinlein
>
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
>
From | Date | Subject | |
---|---|---|---|
Next Message | scrappy | 2004-03-03 10:16:33 | Hey, ya! =)) |
Previous Message | Paulovič Michal | 2004-03-03 05:45:56 | Re: Moving from MySQL to PGSQL....some questions (multilevel |