Oracle - controlar excepcion

   
Vista:

controlar excepcion

Publicado por RobertoMZ (11 intervenciones) el 10/06/2009 14:15:37
Hola. Tengo un formulario que se llama eliminarcliente, y que contiene varios campos entre ellos el dni, cuando se busca a un cliente si existe se muestran todos los campos del formulario con sus datos, pero si no existe, no se muestra nada en ellos, lo que quiero es que si esos campos no tienen ningun dato, y se le da a un boton que hay en el formulario para eliminar el registro, salga un mensaje diciendo de que no hay nungun registro seleccionado.

Lo que tengo puesto en el boton eliminar es esto:

DECLARE
NOEXISTE EXCEPTION;
BEGIN
IF :ELIMINARCLIENTE.DNI=NULL THEN
RAISE NOEXISTE;
END IF;
.........
EXCEPTION
WHEN NOEXISTE THEN message('No hay ningun registro');
END;

Pero no me funciona.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:controlar excepcion

Publicado por Sonia Meza (2 intervenciones) el 13/06/2009 00:52:08
Yo lo controlaria de la sig.manera:

exception
when no_data_found then
message('No hay ningun registro');
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:controlar excepcion

Publicado por Sergio (79 intervenciones) el 13/06/2009 21:26:17
Después de la línea:

message('No hay ningun registro');

agrega:

RAISE;

y haz la prueba.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:controlar excepcion

Publicado por RobertoMZ (11 intervenciones) el 14/06/2009 17:03:39
Lo comento por si algien ha tenido el mismo error. El problema esta en la linea
IF :ELIMINARCLIENTE.DNI=NULL THEN.

Poniento un is, en vez del = funciona perfectamente, es decir
IF :ELIMINARCLIENTE.DNI IS NULL THEN
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar