我有以下声明集合与PL/SQL集合处理
TYPE T_TABLE1 IS TABLE OF TABLE_1%ROWTYPE INDEX BY BINARY_INTEGER;
tbl1_u T_TABLE1;
tbl1_i T_TABLE1;
此表将继续增长,并在年底,将在FORALL循环可以用来做插入或更新上TABLE_1。
现在可能会出现这种情况,我想删除某个元素。所以我打算创建一个过程,这将需要的KEY(唯一的),如果该键被找到
PSEDUO CODE
FOR i in tbl1_u.FIST..tbl1_u.LAST
LOOP
if tbl1_u(i).key = key then
tbl1.delete(i);
end if;
END LOOP;
我的问题是相匹配的元素,
一旦我删除特定的元素,将收集调整自动即索引我会被替换下一个元素或该特定的索引将保持空/无效,并可能给我例外,如果我在FORALL INSERT/UPDATE中使用它?
我不认为我可以将TABLE_1%ROWTYPE对象传递给一个过程,我是否必须创建一个记录类型?
- 任何其他有关管理收藏夹删除/更新/插入的提示将不胜感激。记住,我会处理2个表,如果我在table_1中插入/更新,那么这意味着我将它从table_2中删除,反之亦然。
TABLE_1.KEY是唯一的吗? –
是的,Table_1.Key是唯一的 –