Ho una tabella Emp con EmpID, Empname, Salary e sto provando a fare un calcolo per ogni impiegato. Ma sto avendo problemi cercando di ripetere su ogni emp per fare il calcolo. Non posso però usare cursori espliciti.Iterate su una colonna in PL/SQL
Così adesso sto solo cercando di creare l'elenco di 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;
Ma ottengo l'errore: PLS-00320: la dichiarazione del tipo di questa espressione è incompleta o malformati
grazie per il tuo aiuto Justin, ma quando eseguo il tuo primo codice ma l'output di dbms è (eid) non (employees.eid), non lo stampa nel dbms outout. Sai perché? – Leo
@ Leo- Che strumento stai usando? In SQL * Plus, è necessario eseguire il comando SET SERVEROUTPUT ON per abilitare l'output DBMS_OUTPUT. –
@Leo: se hai mantenuto la sezione 'dichlare' allora' eid' potrebbe non essere inizializzato, quindi stamperà nulla - presupponendo che l'output del server sia abilitato. @Justin, dovresti avere 'dbms_output.put_line (employed.emp_id)', o un alias di colonna nel cursore? –