declare
       i number:=1;
begin
       for v_row in (select * from testA)
       loop
            while i<=10
            loop
                 insert into testB
                 select i,v_row.a1,add_months(v_row.a2,6*i) from dual;
                 i:=i+1;
            end loop;
            i:=1;
       end loop;
       commit;
exception
       when others then
       rollback;
       
end;