[postgresql-it] catturare i messaggi di eccezione in pl/pgsql

  • From: Andrea Bocchini <andreaboc@xxxxxxxxxxxx>
  • To: postgresql-it <postgresql-it@xxxxxxxxxxxxx>
  • Date: Tue, 13 Nov 2007 18:08:17 +0100

Ciao a Tutti,

Ho un problema con la cattura delle eccezioni nel linguaggio pl/pgsql:
come è possibile sapere con quale messaggio è stata sollevata un'eccezione? dalla documentazione ho notato che è possibile sapere quale errorcode è stato sollevato ma se dovessi sapere anche il messaggio?
ad esempio:

CREATE OR REPLACE FUNCTION prova_exception() RETURNS text AS
$$
BEGIN
 BEGIN
   -- codice plpgsql...
   -- forzo una eccezione
   RAISE EXCEPTION 'prova';
 EXCEPTION
   WHEN raise_exception THEN
-- con il comando raise exception ho sollevato l'eccezione, vorrei sapere quale è il messaggio di errore (in questo caso 'prova')
       -- <codice aggiuntivo da eseguire>
     RETURN 'ERRORE, Messaggio: ' || <messaggio????>;
 END;
 RETURN 'Prova....';
END;
$$
 language 'plpgsql';

C'e' una variabile con l'ultimo messaggio di eccezione o una tabella con gli ultimi messaggi inviati da PostgreSQL?
grazie in anticipo,
Ciao.


Other related posts:

  • » [postgresql-it] catturare i messaggi di eccezione in pl/pgsql - Andrea Bocchini