SQL> begin
2 for i in 1 .. 100 loop
3 i := i + 4;
4 end loop;
5 end;
6 /
i := i + 4;
*
ERROR at line 3:
ORA-06550: line 3, column 5:
PLS-00363: expression 'I' cannot be used as an assignment target
ORA-06550: line 3, column 5:
PL/SQL: Statement ignored
You can use the loop index inside the loop, but you can not change it. If you want to loop by an increment other than one, you will have to do so programmatically as the FOR loop will only increment the index by one.