PL/SQL循环是否在特定的时间间隔自动提交,还是我需要在循环之后提交?在PL/SQL中运行循环时,是否需要事后提交?
Oracle 10g和11g
FORALL i IN x.FIRST .. x.LAST
delete from table where 1=1;
我现在有一个PL/SQL脚本进行批量收集,然后运行该FORALL遍历集合循环3种不同的。我目前正在每个循环完成后提交一个脚本中的commit语句。这是否需要?它是否会减慢执行速度,尤其是当该集合有数百万个条目时?
谢谢
虽然我同意你在答案中所说的一切,但我不认为它完全回答了这个问题。在FORALL语句后不需要*提交。您可以稍后再提交,并且您不应在交易结束前提交。 – 2011-03-10 12:37:31
+1“FORALL不是一个循环” – 2011-05-26 03:33:20