Tom Lane wrote:
>Can anyone check how well the syntax of plpgsql EXCEPTION, as described
>at
>http://developer.postgresql.org/docs/postgres/plpgsql-control-structures.html#PLPGSQL-ERROR-TRAPPING
>agrees with what Oracle does? I did some googling but couldn't find
>anything that seemed authoritative. I'm wondering in particular if
>Oracle allows multiple condition names per WHEN, along the lines of
> WHEN condition [ , condition ... ] THEN
> handler_statements
>
>Also it would be nice to see a complete list of the "condition" names
>that they accept. I whipped up a quick table based on our ERRCODE
>macro names, see
>http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/pl/plpgsql/src/plerrcodes.h
>but I'm certain that's not what we really want to expose to users
>in the long run.
>
>
It appears you can have multiple exceptions in a single handler, but
that the separator is 'OR' rather than ','.
See
http://www.cise.ufl.edu/help/database/oracle-docs/appdev.920/a96624/13_elems17.htm
The page also gives a link to a list of the predefined exceptions.
PL/SQL allows users to define and raise their own exceptions too.
cheers
andrew