我已将表中的行添加到dbms_sql.varchar2_table类型的变量中。
select id
bulk collect into collValyes
from tabl1;
collValyes是dbms_sql.varchar2_table类型的变量。 现在我必须在where子句中使用collValyes。喜欢
update Table2
set Status ='R'
where id in collValyes .
一个执行上面的查询,我正在
PLS-00382: expression is of wrong type
我在网上搜索了很多但没有找到解决方案。 请帮忙
答案 0 :(得分:3)
您可以使用FORALL批量处理进行更新:
FORALL x IN INDICES OF collValyes
UPDATE Table2
SET status = 'R'
WHERE id = collValyes(x);
您可以在此处找到有关Oracle FORALL的更多信息:
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/forall_statement.htm
希望它有所帮助...