Throwing exceptions

Поиск
Список
Период
Сортировка
Искать

Throwing exceptions

От:
Germán Hüttemann Arza <ghuttemann@cnc.una.py>
Дата:
Hi,

I need a way to throw a message in a function, when an exception occurs, but I 
don't want to write again and again the same message in every place I need to 
throw it. So, is there a way to handle this situation in a more general 
manner?

Thanks in advance,

-- 
Germán Hüttemann Arza
CNC - Centro Nacional de Computación
UNA - Universidad Nacional de Asunción
Campus Universitario, San Lorenzo - Paraguay
http://www.cnc.una.py - Tel.: +595 21 585550

Re: Throwing exceptions

От:
Michael Glaesemann <grzm@seespotcode.net>
Дата:

On Jun 21, 2007, at 10:30 , Germán Hüttemann Arza wrote:

> I need a way to throw a message in a function, when an exception  
> occurs, but I
> don't want to write again and again the same message in every place  
> I need to
> throw it. So, is there a way to handle this situation in a more  
> general
> manner?

The message is just a string. Assign the message to a variable and  
use the variable in place of the message. For example, in PL/pgSQL:

k_error_message := 'Boom! %';
RAISE EXCEPTION k_error_message, v_foo.id;

Hope that helps.

Michael Glaesemann
grzm seespotcode net


Re: Throwing exceptions

От:
Michael Glaesemann <grzm@seespotcode.net>
Дата:

On Jun 25, 2007, at 19:01 , Michael Glaesemann wrote:

> The message is just a string. Assign the message to a variable and  
> use the variable in place of the message. For example, in PL/pgSQL:
>
> k_error_message := 'Boom! %';
> RAISE EXCEPTION k_error_message, v_foo.id;

I was wrong. The message is not just a string, but you can  
interpolate the message text (and other variables) like so:

RAISE EXCEPTION '%, %', k_error_message, v_foo_id;

Michael Glaesemann
grzm seespotcode net


FAQ