Is this implementation is available in postgres 8.0.2 ? Or which version of Postgres?
Thanks Dinesh Pandey -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Pavel Stehule Sent: Thursday, May 26, 2005 12:47 PM To: Neil Conway Cc: Bruce Momjian; pgsql-patches@postgresql.org; 'Tom Lane' Subject: Re: [PATCHES] Implementation of SQLSTATE and SQLERRM variables > I think the docs need more than just "these variables are set when an > exception is raised". > > The patch current resets SQLSTATE and SQLERRM whenever a new block is > entered. So: > > create function trap_exceptions() returns void as $_$ begin > begin > raise exception 'first exception'; > exception when others then > raise notice '% %', SQLSTATE, SQLERRM; > begin > raise notice '% %', SQLSTATE, SQLERRM; > end; > end; > return; > end; $_$ language plpgsql; > > The second RAISE will report "successful completion". Is this the > behavior we want? True, its foggy behave. Only if block contains exception than variables SQLSTATE and SQLERRM are created. > > Is SQLERRM the best name for that variable? It seems a little obscure to me. > This name use Oracle in PL/SQL. ESQL Oracle and DB2 too. I think so is better use well knowed names for it than creating own. There is one argument for it. PL/pgSQL is language very similar Oracle PL/SQL. PL/SQL know SQLERRM, SQLCODE and SQLSTATE. An people which know PL/SQL will like use this names in Pg. Pavel Stehule > -Neil > > ---------------------------(end of > broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq > ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings