Cześć,
mam otóż taki problem - gdyż nie wiem jak w bazie Oracle zaktualizować wiersze w tabeli i wykorzystać do tego klauzule RETURNING INTO.
Otóż mam tą klauzulę zastosować (dla WHERE CURRENT OF działa mi poprawnie, lecz nie wiem jak zrobić to dla RETURNING INTO).
Tabela ma nazwę OCENA i w niej jest pole ocena.

Podaje mój kod:

SET SERVEROUTPUT ON
DECLARE
  CURSOR zmi IS
    SELECT s.nazwisko, o.ocena
    FROM student s, ocena o, zajecia z, przedmiot p, wykladowca w
    WHERE s.ID_STUDENT = o.ID_STUDENT AND z.ID_ZAJECIA = o.ID_ZAJECIA AND z.ID_PRZEDMIOT = p.ID_PRZEDMIOT  AND z.ID_WYKLADOWCA = w.ID_WYKLADOWCA 
    AND p.nazwa = 'ALGEBRA' AND w.nazwisko = 'MALISZEWSKI' FOR UPDATE;
  nocena ocena.ocena%TYPE;
BEGIN
  FOR li IN zmi LOOP
   dbms_output.put_line('Przed: ' || li.nazwisko || ' ' || li.ocena);
   IF(li.ocena = 4.0) THEN
    nocena := 5.0;
  ELSIF(li.ocena <> 2.0) THEN
    nocena := li.ocena - 0.5;
   END IF;
   UPDATE ocena SET ocena = nocena** RETURNING ocena INTO ?????**;
   dbms_output.put_line(li.nazwisko || ' ' || **ta_nowa_ocena**);
  END LOOP;
END;