Oracle - este es el codigo que tengo pero no me hace nada

 
Vista:

este es el codigo que tengo pero no me hace nada

Publicado por ginna_bonita (2 intervenciones) el 18/07/2003 02:10:59
set verify off
set sertveroutput on
declare

CURSOR CUR_EMP IS SELECT distinc(mgr) FROM EMP order by mgr desc;
cursor cur2(var emp.mgr%type) is select ename, job,mgr,sal from emp where mgr=var ;

empleados emp.mgr%type;
nom emp.nom%type;
job1 emp.job%type;
salar emp.sal%type;

BEGIN

open cur_emp;
loop
fetch cur_emp into empleados;
exit when cur_emp%notfound;
open cur2(empleados);
loop
fetch cur2 into nom,job1,salar,mgr1;
if mgr1 = empleados then
exit when 2%notfound;
insert into tabla(nombre,puesto,salario)values(nom.ename,job1.job,salar.sal);
else
dbms_output.put_line(\'No hay empleados dependientes\');
end loop;
close cur_emp;
end loop;
close cur2;
commiT;
end;
/
select *from tabla;
set verify on
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

Vaya que haces sufrir!!!

Publicado por Colaborador (22 intervenciones) el 18/07/2003 16:29:19
Hola intenta con este código...
cl
set verify off ;
set serveroutput on ;
declare

CURSOR cur_emp IS SELECT distinct(mgr) FROM EMP order by mgr desc;
cursor cur2(var emp.mgr%type) is select ename, job,sal, mgr from emp where mgr=var ;

empleados emp.mgr%type;
nom emp.ename%type;
job1 emp.job%type;
salar emp.sal%type;
mgr1 emp.mgr%type;
BEGIN

open cur_emp;
loop
fetch cur_emp into empleados;
exit when cur_emp%notfound;
open cur2(empleados);
loop
fetch cur2 into nom,job1,salar,mgr1;
dbms_output.put_line(empleados||'='||mgr1||'?');
exit when cur2%notfound;
if mgr1 = empleados then
insert into tabla(nombre,puesto,salario)values(nom,job1,salar);
else
dbms_output.put_line('---->>>No hay empleados dependientes\');
end if;
end loop;
close cur2;
end loop;
close cur_emp;
commiT;
end;
/
select * from tabla;
set verify on ;

Te recomiendo leas los manuales de PL/SQL básicos
Por si acaso yo tengo el esquema de scott en inglés... modificalo según tu esquema....
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