Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

PROBLEMAS CON EXCEPTION pl

Estas en el tema de PROBLEMAS CON EXCEPTION pl en el foro de Oracle en Foros del Web. lo que pasa es lo siguiente:; debo validar la existencia de dos codigos en sus rspectivas tablas, para lo cual uso un cursor implicito con ...
  #1 (permalink)  
Antiguo 17/09/2009, 08:59
 
Fecha de Ingreso: septiembre-2009
Mensajes: 8
Antigüedad: 15 años, 2 meses
Puntos: 0
PROBLEMAS CON EXCEPTION pl

lo que pasa es lo siguiente:;
debo validar la existencia de dos codigos en sus rspectivas tablas, para lo cual uso un cursor implicito con su respectivo no_data_found como excepcion.
luego q valido debo comprobar la existencia de esos mismos codigos juntos en otra tabla. para lo cual tb uso un cursor implicito y aqui el problema ya que en al no encontra esta combinacion debo insertar en dicha tabla la misma combinacion.
eentonces la cosa es que si cae en el primer select debe mandar un mensaje que no se encuenytran lso codigos, y en el caso de q sea en el ultmimo se debe insertar.
entonmces como lo hago para diferenciar una de otra.
este es e lcodigo de prueba q esoty haciendo:

create or replace procedure insertar_existencia(codigo_bodega bodega.cod_bod%type, codigo_reproduccion rep_cuadro.cod_rep%type)
is


tit rep_cuadro.titulo%type;
nom bodega.nom_bod%type;
cant number;

begin


cant := 0;

select nom_bod into nom from bodega
where cod_bod = codigo_bodega;


select titulo into tit from rep_cuadro
where cod_rep = codigo_reproduccion;


select cantidad into cant from existencia
where cod_bod = codigo_bodega and cod_rep = codigo_reproduccion;
if cant <> 0 then
dbms_output.put_line('entre');

end if;


EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('no/insertar');
end;


ojala me ayuden
aaa y otra cosa como llamo a un procedimiento dentro de otro

Última edición por albokiller; 17/09/2009 a las 09:08
  #2 (permalink)  
Antiguo 18/09/2009, 03:26
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años
Puntos: 85
Respuesta: PROBLEMAS CON EXCEPTION pl

Siempre se pueden anidar las excepciones.

Código:
begin

 select nom_bod into nom 
  from bodega 
 where cod_bod = codigo_bodega;

 select titulo into tit 
  from rep_cuadro
 where cod_rep = codigo_reproduccion;

 begin

  select cantidad into cant from existencia
  where cod_bod = codigo_bodega 
             and cod_rep = codigo_reproduccion;

  if cant <> 0 then
   dbms_output.put_line('entre');
  end if;

 exception
   when no_data_found then
   //la combinación no existe y se debe insertar;
 end;   

EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('no/insertar');
end;
Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:28.