я написал программу, которая использует курсор, чтобы обновить некоторые строки в этих table- здесь программа:пл/Процедура обновления SQL с курсором застревает
DECLARE
-- Local variables here
CURSOR s
IS
(SELECT UNIQUE *
FROM Sellers
WHERE ID_Seller NOT IN (SELECT ID_Seller
FROM Sellers NATURAL JOIN Sales));
s_rec Sellers%ROWTYPE;
BEGIN
-- Test statements here
OPEN s;
LOOP
FETCH s INTO s_rec;
EXIT WHEN s%NOTFOUND;
DBMS_OUTPUT.put_line (s_rec.ID_Seller);
DBMS_OUTPUT.put_line (s_rec.Salary);
updateSalary (s_rec.ID_Seller, s_rec.Salary - 50);
END LOOP;
CLOSE s;
END;
это процедура updateSalary:
CREATE OR REPLACE PROCEDURE updateSalary (ID_S IN VARCHAR2,
newSalary IN FLOAT)
IS
BEGIN
UPDATE Sellers s
SET s.salary = newSalary
WHERE s.ID_Seller = ID_S;
END updateSalary;
При запуске программы он застревает в команде обновления. Что не так с процедурой?