Le moyen le plus rapide pour insérer un million de lignes dans Oracle

Comment puis-je insérer plus d'un million de lignes dans Oracle dans des conditions optimales pour la suite procdeure? Il se bloque si je l'augmentation de la boucle for POUR un million de lignes.

create or replace procedure inst_prc1 as
   xssn number;
   xcount number;
   l_start Number;
   l_end Number;
   cursor c1 is select max(ssn)S1 from dtr_debtors1;

Begin
  l_start := DBMS_UTILITY.GET_TIME;
  FOR I IN 1..10000 LOOP
    For C1_REC IN C1 Loop
      insert into dtr_debtors1(SSN) values (C1_REC.S1+1);
    End loop;
  END LOOP;
  commit;
  l_end := DBMS_UTILITY.GET_TIME;
  DBMS_OUTPUT.PUT_LINE('The Procedure  Start Time is '||l_start);
  DBMS_OUTPUT.PUT_LINE('The Procedure End Time is '||l_end); 
End inst_prc1;
Je recommande de ne pas utiliser le curseur pour cela. Comme curseur va diminuer votre performance.
Cochez cette lien

OriginalL'auteur user1016594 | 2013-08-24