oracle循环for处理数组循环插入数据

1:循环某个数组操作数据

 declare 
  type num_list is varray(18) of number(12);
  xz num_list := num_list(25638,25551,46216,81578,46745,46429,84521,84407,
84001,46342,84497,
46392,46661,47238,47001,42488,42529,42534);
begin 
  for i in 1..xz.count 

  loop 
    update II_II ii set ii.is_sale=2,ii.usable=2
     where ii.sets_of_books_id=xz(i) and ii.item_id in
      (select v.item_id from 
      VV_VV v 
      where v.sets_of_books_id=25638 and v.qty_onhand>10000 );
      - -循环自定义数组xz。更新每个sets_of_books_id在数组里面的数据
  end loop;
end;

2:循环多少次做某个动作例如(插入)

DECLARE
   a number(30) := 0;
BEGIN
   for i in 1 .. 10 loop
   --循环10次插入
      INSERT INTO PP_PP(NAME) VALUES('bbb' + i);
       sys.dbms_output.put_line('bbb' || i);
   end loop;
   commit;
END;

你可能感兴趣的:(随笔)