gpt4 book ai didi

oracle - 多次插入类型表集合

转载 作者:行者123 更新时间:2023-12-01 12:47:39 26 4
gpt4 key购买 nike

我在 oracle 11g 中创建了以下对象。

CREATE OR REPLACE TYPE myObject as object(
fieldOne number,
fieldTwo number
);

并创建了一个新的表类型myObject;

CREATE OR REPLACE TYPE myTable IS TABLE OF myObject;

我现在想创建一个新的 myTable 实例,并在 SQL Plus 命令行上向 myTable 添加几个硬编码行,然后将对象传递给 myProcedure一个参数。

我尝试了以下;

declare newTable myTable;
begin
select myObject(50,5) bulk collect into newTable from dual;
select myObject(40,7) bulk collect into newTable from dual;
myProcedure(newTable);
commit;
end;

尽管第二个 select into 语句覆盖了第一个,但哪种方法有效。

我的问题是;如何向 newTable 添加多行?

提前致谢:)

最佳答案

declare
newTable myTable;
begin
newTable := myTable();
newTable.extend(2); -- The desired size of the collection

-- Oracle collections begin at index 1, not 0
newTable(1) := myObject(50, 5);
newTable(2) := myObject(40, 7);

myProcedure(newTable);
end;

关于oracle - 多次插入类型表集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14429327/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com