Ако можете да приложите вашето изискване чрез INSERT INTO SELECT
клауза, дори не е необходимо да използвате forall
и bulk collect
изявления. Има една поговорка „ако можете да го направите в SQL, направете го в SQL ".
Но в някои ситуации може да се наложи да обработвате данните си ред по ред, което може да ви принуди да кодирате цикъл. Това всъщност е ужасно, това означава, че вашите операции в рамките на този цикъл ще бъдат изпълнени като единични изрази върху надпис. Но ако използвате forall
, PL/SQL машината ще изпълнява вашия цикъл по набор-базиран начин, което ще ви даде наистина добър тласък на производителността.