Обсуждение: Return Opaque / Error in Function

Поиск
Список
Период
Сортировка

Return Opaque / Error in Function

От
Knud Müller
Дата:

The following function is executed by a trigger. I'am receiving the error
message following. What am I doing wrong ? Can someone help me ?

Create Function update_productvariant()
RETURNS OPAQUE
AS 'DECLARE
pid text;
BEGIN
pid := old.productvariantid;
Insert into productupdate (productvariantid) values (pid);
RETURN old;
END;'
Language 'plpgsql';


Error:
mag=# Delete from productvariant where productvariantid='4015223929157';
ERROR:  control reaches end of trigger procedure without RETURN
DEBUG:  Last error occured while executing PL/pgSQL function
update_productvariant
DEBUG:  at END of toplevel PL block
ERROR:  control reaches end of trigger procedure without RETURN



Re: Return Opaque / Error in Function

От
Tom Lane
Дата:
Knud Müller <k.mueller@portrix.net> writes:
> mag=# Delete from productvariant where productvariantid='4015223929157';
> ERROR:  control reaches end of trigger procedure without RETURN
> DEBUG:  Last error occured while executing PL/pgSQL function
> update_productvariant
> DEBUG:  at END of toplevel PL block
> ERROR:  control reaches end of trigger procedure without RETURN

Your function looks fine to me, and executes fine here.  Not sure what
the problem is.  You are using a recent version of Postgres, no?
        regards, tom lane