Oracle
 sql >> Base de données >  >> RDS >> Oracle

Collecte en vrac ... pour tous les usages

Si vous pouvez implémenter votre exigence par un INSERT INTO SELECT clause, vous n'avez même pas besoin d'utiliser forall et bulk collect déclarations. Il y a un dicton, "si vous pouvez le faire en SQL, faites-le en SQL ".

Mais dans certaines situations, vous devrez peut-être traiter vos données ligne par ligne, ce qui peut vous obliger à coder une boucle. C'est en fait terrible, cela signifie que vos opérations dans cette boucle seront exécutées en tant qu'instructions uniques sur un over. Mais si vous utilisez forall , le moteur PL/SQL exécutera votre boucle d'une manière basée sur des ensembles, ce qui vous donnera une réelle amélioration des performances.