G-7810: Never use SQL inside PL/SQL to read sequence numbers (or SYSDATE).

Major

Efficiency, Maintainability

Reason

Since ORACLE 11g it is no longer needed to use a SELECT statement to read a sequence (which would imply a context switch).

Example (bad)

DECLARE
   l_sequence_number employees.emloyee_id%type;
BEGIN
   SELECT employees_seq.NEXTVAL
     INTO l_sequence_number
     FROM DUAL;
END;
/

Example (good)

DECLARE
   l_sequence_number employees.emloyee_id%type;
BEGIN
   l_sequence_number := employees_seq.NEXTVAL;
END;
/