我有一张桌子%ROWTYPE
:
TYPE t_my_tab IS TABLE OF my_config%ROWTYPE INDEX BY BINARY_INTEGER;
my_tab t_my_tab;
我使用一些动态 SQL 加载它:
EXECUTE IMMEDIATE v_sql BULK COLLECT INTO my_tab;
我收到一个错误:
UPDATE ... SET x = mytab.count ...;
PL/SQL: ORA-00904: "MY_TAB"."COUNT": invalid identifier
但是当我将值分配给另一个变量时,它工作正常:
v_count NUMBER;
v_count := mytab_tab.count;
UPDATE ... SET x = v_count ...;
有没有办法避免这种重新分配?当我在循环中使用my_tab.first
和时,我遇到了同样的问题。my_tab.last
FOR