为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:linux
【CPU】:
【问题描述】*:在存储过程中使用forall循环时,通过EXECUTE IMMEDIATE 执行动态SQL,时,存储过程创建失败。问,在forall循环中是否可用动态SQL,怎么用?还是只能用普通SQL
可以看看这个
DECLARE
TYPE num_list IS TABLE OF NUMBER;
TYPE name_list IS TABLE OF VARCHAR2(50);
emp_nums num_list;
enames name_list;
BEGIN
emp_nums := num_list(1, 2, 3, 4, 5);
FORALL i IN emp_nums.FIRST .. emp_nums.LAST
EXECUTE IMMEDIATE 'UPDATE ABC SET salary = salary * 1.1 WHERE ids = :1 ' USING emp_nums(i);
END;
仅支持以上语句