Re: nested elseif woes - Mailing list pgsql-general

From Frank Miles
Subject Re: nested elseif woes
Date
Msg-id Pine.A41.4.58.0405101147080.110800@homer06.u.washington.edu
Whole thread Raw
In response to nested elseif woes  (Ivan Sergio Borgonovo <mail@webthatworks.it>)
List pgsql-general
Dear  Ivan:

On Mon, 10 May 2004, Ivan Sergio Borgonovo wrote:

> First thanks to Tom Lane who helped me promptly.
>
> Now let's come to the problem:
>
> create or replace function testa( )
>     returns char(32) as
> '
> begin
>     if 1=2 then
>         if 1=2 then
>             select 1;
>         elseif 1=3 then
>             select 2;
>         elseif 1=4 then
>             if 1=5 then
>                 select 3;
>             else
>                 select 4;
>             end if;
>         end if;
>     end if;
>     return md5(''aaaa'');
> end;
> ' language plpgsql;
>
> test1=# select * from testa();
> ERROR:  syntax error at or near "if"
> CONTEXT:  compile of PL/pgSQL function "testa" near line 14
>
> I made several test functions with similar structure with no
> improvements.
> I can't even figure a pattern. I get errors on if, else, and elseif.
> Till now the culprit seems to be elseif. Whenever I write test
> functions without elseif I get no errors.
> Did I misinterpreted the docs (37.7.2.4)?
>
> I really can't see the problem.
>
> I'm running 7.4.2-1 on Debian Sarge.

Is this the literal function?  If so, try changing the "elseif" to "elsif".
No 2nd 'e'.

    -frank

pgsql-general by date:

Previous
From: Pavel Stehule
Date:
Subject: domain type and array, is it possible?
Next
From: Kris Jurka
Date:
Subject: Re: nested elseif woes