0
我想创建一个将新行添加到已经存在的表的过程。但是使用当前的过程,我正在重写整个表。当前程序的代码是更新已经填充的表的过程
CREATE TYPE t_tf_row AS OBJECT (
id NUMBER,
description VARCHAR2(50));
CREATE TYPE t_tf_tab IS TABLE OF t_tf_row;
create or replace procedure add_n_rows(
n_rows in number)
is
l_tab t_tf_tab := t_tf_tab();
begin
for i in l_tab.count .. l_tab.count + n_rows
loop
l_tab.extend;
l_tab(l_tab.last) := t_tf_row(i, 'Description for '|| i);
end loop;
end;
在这里,每当我改写整个l_tab
。我想更新已经更新的那个。建议我所需程序的正确方法。感谢
,我发现了以下错误。 'PLS-00363:表达'P_TAB'不能用作分配目标' – ethan
Ooops,是的,会发生;我修复了它。 – Ben
当按照指示调用程序时,得到错误'Subscript beyond count' @Ben – ethan