Evitar no_data_found con select ... into

JackazZ
26 de Diciembre del 2003
Que tal foreros...

Estoy haciendo un procedimiento PL/SQL en el que necesito coger datos de un solo registro.

Imaginemos que es una validacion de que un cliente existe. Si existe tengo que trabajar con sus datos (osea que no me vale un count(*) unicamente) y si no existe no quiero irme a la excepcion, sino darle de alta seguidamente por ejemplo.

No se como controlar esto sin usar un cursor explicito (tambien podria hacerlo asi, es la solucion mas efectiva? recordad que solo quiero datos de un registro).

Ahora mismo lo que estoy haciendo es un SELECT COUNT(*) y si existe entonces hago un SELECT ... INTO.

Como lo veis?

Un saludo y gracias de antemano...

f_gallego
26 de Diciembre del 2003
begin

r_cliente cliente%rowtype;

select * into r_cliente where cliente = c_cliente and rownum < 2;
excetion

when no_data found then
/*insercion*/

end;