mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-18 18:44:06 +08:00
Allow 'ELSEIF' as an alternative to 'ELSIF' in PL/PgSQL. There have been
several reports of users being confused when they attempt to use ELSEIF and run into trouble due to PL/PgSQL's lax parser. The parser will be improved for 8.1, but we can fix most of the problem by allowing ELSEIF for now.
This commit is contained in:
parent
dfdae5d63c
commit
480777e56c
@ -1,5 +1,5 @@
|
||||
<!--
|
||||
$PostgreSQL: pgsql/doc/src/sgml/plpgsql.sgml,v 1.51 2004/12/13 18:05:08 petere Exp $
|
||||
$PostgreSQL: pgsql/doc/src/sgml/plpgsql.sgml,v 1.52 2004/12/17 03:51:34 neilc Exp $
|
||||
-->
|
||||
|
||||
<chapter id="plpgsql">
|
||||
@ -1475,7 +1475,7 @@ SELECT * FROM some_func();
|
||||
|
||||
<para>
|
||||
<literal>IF</> statements let you execute commands based on
|
||||
certain conditions. <application>PL/pgSQL</> has four forms of
|
||||
certain conditions. <application>PL/pgSQL</> has five forms of
|
||||
<literal>IF</>:
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
@ -1490,6 +1490,9 @@ SELECT * FROM some_func();
|
||||
<listitem>
|
||||
<para><literal>IF ... THEN ... ELSIF ... THEN ... ELSE</></>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><literal>IF ... THEN ... ELSEIF ... THEN ... ELSE</></>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
@ -1633,6 +1636,13 @@ END IF;
|
||||
</programlisting>
|
||||
</para>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title><literal>IF-THEN-ELSEIF-ELSE</></title>
|
||||
|
||||
<para>
|
||||
<literal>ELSEIF</> is an alias for <literal>ELSIF</>.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="plpgsql-control-structures-loops">
|
||||
|
@ -4,7 +4,7 @@
|
||||
* procedural language
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/pl/plpgsql/src/scan.l,v 1.37 2004/09/13 01:45:32 neilc Exp $
|
||||
* $PostgreSQL: pgsql/src/pl/plpgsql/src/scan.l,v 1.38 2004/12/17 03:51:36 neilc Exp $
|
||||
*
|
||||
* This software is copyrighted by Jan Wieck - Hamburg.
|
||||
*
|
||||
@ -144,6 +144,7 @@ declare { return K_DECLARE; }
|
||||
default { return K_DEFAULT; }
|
||||
diagnostics { return K_DIAGNOSTICS; }
|
||||
else { return K_ELSE; }
|
||||
elseif { return K_ELSIF; }
|
||||
elsif { return K_ELSIF; }
|
||||
end { return K_END; }
|
||||
exception { return K_EXCEPTION; }
|
||||
|
Loading…
Reference in New Issue
Block a user