Of course. Just set up a counter and commit every x rows.


DECLARE
x NUMBER
...
BEGIN
x := 0
...
WHILE ...
x:=x+1;
INSERT...
IF ( mod(x, 100) = 0) THEN
COMMIT;
END IF;
...


- Chris