Codice: Seleziona tutto
CURSOR dip_area IS
SELECT *
FROM dipendente
WHERE area = &id_area
FOR UPDATE;
Codice: Seleziona tutto
FOR dip_record IN dip_area LOOP
UPDATE dipendente
SET livello_contratto = livello_contratto + 1
WHERE CURRENT OF dip_area;
END LOOP;
Il codice completo del blocco e':
Codice: Seleziona tutto
DECLARE
CURSOR dip_area IS
SELECT *
FROM dipendente
WHERE area = &id_area
FOR UPDATE;
dip_record dip_area%ROWTYPE;
BEGIN
FOR dip_record IN dip_area LOOP
DBMS_OUTPUT.PUT_LINE('Il vecchio livello e'': ' || dip_record.livello_contratto);
UPDATE dipendente
SET livello_contratto = livello_contratto + 1
WHERE CURRENT OF dip_area;
END LOOP;
FOR dip_record IN dip_area LOOP
DBMS_OUTPUT.PUT_LINE('Il nuovo livello e'': ' || dip_record.livello_contratto);
END LOOP;
END;