Re: Function's final statement must be a SELECT - Mailing list pgsql-interfaces

From Dave Page
Subject Re: Function's final statement must be a SELECT
Date
Msg-id 937d27e10805141336l601c4aa2x8972c2bd7fda07e6@mail.gmail.com
Whole thread Raw
In response to Function's final statement must be a SELECT  ("Premil Agarwal" <preagarw@gmail.com>)
Responses Re: Function's final statement must be a SELECT  ("Premil Agarwal" <preagarw@gmail.com>)
List pgsql-interfaces
On Wed, May 14, 2008 at 9:23 PM, Premil Agarwal <preagarw@gmail.com> wrote:
> I am trying to write a function in PgAdmin 1.8.2 for postgres 8.3. The
> function should check the input parameter for NULL. If its NULL then
> function should return 'Auto' otherwise return the input as such.
>
> CREATE FUNCTION check_for_null( inp character varying) RETURNS character
> varying AS $$
>     DECLARE
>         temp1 character varying := 'Auto';
>         temp2 character varying := inp;
>     BEGIN
>
>         IF temp2 IS NOT NULL THEN
>         temp1 := temp2;
>         END IF;
>
>         RETURN temp1;
>     END;
> $$ LANGUAGE SQL;
>
> When I hit 'OK' in create function window, I get following error :-
>
> ERROR: return type mismatch in function declared to return character varying
> DETAIL: Function's final statement must be a SELECT.
> CONTEXT: SQL function "check_for_null"
>
> Any suggestions why this happens ??

Choose pl/pgsql as the language, not SQL.

--
Dave Page
EnterpriseDB UK: http://www.enterprisedb.com

pgsql-interfaces by date:

Previous
From: "Premil Agarwal"
Date:
Subject: Function's final statement must be a SELECT
Next
From: Alvaro Herrera
Date:
Subject: Re: [ADMIN] Function's final statement must be a SELECT