我不知道这是否是正确的术语,但我将“内存表”称为像这样创建的对象:
create type InMemReg is object (field1 varchar2(10), field2 varchar2(20), field3 number);
create type InMemTab is table of InMemReg;
在这种情况下,我的“内存表”是“InMemTab”。我的问题是,当我以前不知道元素的数量时,如何填充这种对象?我在某些地方看到过这种类型的初始化:
declare
v_uno InMemReg := InMemReg('a','b',1999);
v_dos InMemReg := InMemReg('A','Z',2000);
t_tres InMemTab := InMemTab();
begin
t_tres := InMemTab(v_uno, v_dos);
在这种情况下,我在初始化“t_tres”之前有明确的 2 个对象,但是在我可以有 n 个元素的动态场景中,我不知道如何填充它。
在另一种 OO 语言中可能是这样的:
t_tres.add(OtherObject)