Tengo una tabla Emp con EmpID, Empname, Salario y estoy tratando de hacer un cálculo para cada empleado. Pero estoy teniendo problemas tratando de iterar sobre cada emp para hacer el cálculo. Sin embargo, no puedo usar cursores explícitos.Iterar sobre una columna en PL/SQL
Así que en este momento estoy tratando de crear la lista de Empids:
Declare
aRows Number;
eid emp_ID%TYPE;
Begin
Select Count(*)
Into aRows
from emp;
Select emp_ID
Into eid
From emp;
FOR days IN 1..Tot_Rows
Loop
Dbms_Output.Put_Line(eid);
eid := eid + 1;
End Loop;
END;
Pero me sale el error: PLS-00320: la declaración del tipo de esta expresión está incompleta o mal formado
gracias por su ayuda Justin, pero cuando ejecuto su primer código pero el resultado de dbms es (eid) no (employees.eid), no lo imprime en el resumen de dbms. ¿Sabes por qué? – Leo
@ Leo- ¿Qué herramienta estás usando? En SQL * Plus, debe ejecutar el comando SET SERVEROUTPUT ON para habilitar la salida DBMS_OUTPUT. –
@Leo: si guardó la sección 'declare',' eid' no se puede inicializar, por lo que se imprimirá nulo, suponiendo que tiene habilitada la salida del servidor. @Justin, ¿debería tener 'dbms_output.put_line (employed.emp_id)', o un alias de columna en el cursor? –