Re: "function has no parameter $1" - help. - Mailing list pgsql-sql

From Christoph Haller
Subject Re: "function has no parameter $1" - help.
Date
Msg-id 3E436E41.ABA852F5@rodos.fzk.de
Whole thread Raw
In response to "function has no parameter $1" - help.  (Michael Weaver <mweaver@corpusglobe.com>)
List pgsql-sql
>
> I'm trying to create a trigger to enforce a constraint onto two
possible
> foreign tables
> my function is defined as:
>
> <-- snip -->
> CREATE OR REPLACE FUNCTION
> sp_check_tranitem_productid(tbl_tranitem.fld_tranitem_id%TYPE,
>                               tbl_tranitem.fld_tranitem_type%TYPE)
RETURNS
> OPAQUE AS '
> DECLARE
> -------[Parameters]-------
>       pl_product_id   ALIAS FOR $1;
>       pl_product_type ALIAS FOR $2;
> <-- snip -->
>
> but when I call the function I get the error:
>
>       function has no parameter $1
>
> What is going wrong?
>
> (I am using PostgreSQL 7.3.1)
>
The documentation says about trigger procedures:

PL/pgSQL can be used to define trigger procedures. A trigger procedure
is created with the CREATE FUNCTION command as a
function with no arguments and a return type of OPAQUE. Note that the
function must be declared with no arguments even if it
expects to receive arguments specified in CREATE TRIGGER --- trigger
arguments are passed via TG_ARGV, as described
below.

Refer to that chapter for an example.

Regards, Christoph




pgsql-sql by date:

Previous
From: "waimeng"
Date:
Subject: PostgreSQL 7.3.1 multiple schema select query error: java.sql.SQLException: ERROR: parser: parse error at or near "."
Next
From: Achilleus Mantzios
Date:
Subject: Re: PostgreSQL 7.3.1 multiple schema select query error: