FOR Loop Scoping Rules
SQL> SQL> CREATE TABLE MyTable ( 2 num_col NUMBER, 3 char_col VARCHAR2(60) 4 ); Table created. SQL> SQL> SQL> SQL> DECLARE 2 v_Counter NUMBER := 7; 3 BEGIN 4 INSERT INTO MyTable (num_col) 5 VALUES (v_Counter); 6 7 FOR v_Counter IN 20..30 LOOP 8 INSERT INTO MyTable (num_col) 9 VALUES (v_Counter); 10 END LOOP; 11 INSERT INTO MyTable (num_col) 12 VALUES (v_Counter); 13 END; 14 / PL/SQL procedure successfully completed. SQL> SQL> SQL> SQL> select * from MyTable; NUM_COL CHAR_COL ---------- ------------------------------------------------------------ 7 20 21 22 23 24 25 26 27 28 29 NUM_COL CHAR_COL ---------- ------------------------------------------------------------ 30 7 13 rows selected. SQL> SQL> drop table MyTable; Table dropped. SQL>