Oracle - AYUDA !! CURSORES CON ERROR PL/SQL ORACLE

 
Vista:

AYUDA !! CURSORES CON ERROR PL/SQL ORACLE

Publicado por Giancarlo Soto Leyva (1 intervención) el 14/05/2016 01:04:52
ayuda !!! Elaborar un bloque PL/SQL que muestre el empno, ename y dname de todos los Empleados. Utilizar Cursores. ENAME Y EMPNO SON DE LA TABLA EMPLEADO Y DNAME DE LA TABLA DEPARTAMENTO AMBOS SE RELACION POR LA FK DEPTNO.

MI CODIGO ESTA ASI .. PERO ME COMPILA CON ERRORES POR FAVOR SU APOYO PARA MEJORARLO E INDICARME PORQUE FALLA.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
set serveroutput on
declare
empno emp.empno%type;
ename emp.ename%type;
dname dept.dname%type;
begin
declare
cursor EMPLEADO is
select e.empno, e.ename, d.dname
from emp e  inner join dept d
on e.deptno = d.deptno;
 
begin
open EMPLEADO;
loop
fetch EMPLEADO into empno, ename, dname;
exit when EMPLEADO%notfound;
dbms_output.put_line('Empleado :'||empno,ename,dname);
end loop;
close EMPLEADO;
end;
end;


Saludos.
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
sin imagen de perfil

AYUDA !! CURSORES CON ERROR PL/SQL ORACLE

Publicado por luis (2 intervenciones) el 24/08/2017 18:15:42
seguramente esto ya quedo solucionado
solo lo documentamos para que no quede sin solucion
tu codigo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
set serveroutput on
declare
vempno emp.empno%type;
vename emp.ename%type;
vdname dept.dname%type;
 
begin
DECLARE
cursor EMPLEADO is
select e.empno, e.ename, d.dname
into vempno, vename, vdname
from emp e  inner join dept d
on e.deptno = d.deptno;
 
begin
open EMPLEADO;
loop
fetch EMPLEADO into vempno, vename, vdname;
exit when EMPLEADO%notfound;
dbms_output.put_line('Empleado :'||vempno || ', ' || vename || ', ' || vdname);
end loop;
close EMPLEADO;
end;
end;




mi sugerencia en un procedimiento

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
create or replace procedure empleado (salida out varchar2) as
 
vempno emp.empno%type;
vename emp.ename%type;
vdname dept.dname%type;
 
begin
DECLARE
cursor EMPLEADO is
select e.empno, e.ename, d.dname
into vempno, vename, vdname
from emp e  inner join dept d
on e.deptno = d.deptno;
 
begin
open EMPLEADO;
loop
fetch EMPLEADO into vempno, vename, vdname;
exit when EMPLEADO%notfound;
dbms_output.put_line('Empleado :'||vempno || ', ' || vename || ', ' || vdname);
end loop;
close EMPLEADO;
end;
end;

saludos
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