任何人都可以帮助我如何在oracle中的FORALL选项中提供多个DML语句。
答案 0 :(得分:3)
如何在FORALL中提供多个DML语句
你做不到。一个 FORALL 语句只能支持一个 DML 语句。对于" n" DML,你需要写" n" FORALL声明。
答案 1 :(得分:0)
实际上,您可以将DML放在单个匿名pl / sql块中,并通过execute立即执行语句运行它,如下所示(https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:9530395800346231332):
forall 1 .. l_var.count
execute immediate 'begin
delete tab1 where id=:1;
delete tab2 where id=:1;
delete tab3 where id=:1;
end;' using l_var(i);