G-4110: Always use %NOTFOUND instead of NOT %FOUND to check whether a cursor returned data.
Minor
Maintainability
Reason
The readability of your code will be higher when you avoid negative sentences.
Example (bad)
DECLARE
CURSOR c_employees IS
SELECT last_name
,first_name
FROM employees
WHERE commission_pct IS NOT NULL;
r_employee c_employees%ROWTYPE;
BEGIN
OPEN c_employees;
<<read_employees>>
LOOP
FETCH c_employees INTO r_employee;
EXIT read_employees WHEN NOT c_employees%FOUND;
END LOOP read_employees;
CLOSE c_employees;
END;
/
Example (good)
DECLARE
CURSOR c_employees IS
SELECT last_name
,first_name
FROM employees
WHERE commission_pct IS NOT NULL;
r_employee c_employees%ROWTYPE;
BEGIN
OPEN c_employees;
<<read_employees>>
LOOP
FETCH c_employees INTO r_employee;
EXIT read_employees WHEN c_employees%NOTFOUND;
END LOOP read_employees;
CLOSE c_employees;
END;
/