首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >oracle 10g中嵌套表扩展的混淆

oracle 10g中嵌套表扩展的混淆
EN

Stack Overflow用户
提问于 2015-02-23 15:59:37
回答 1查看 316关注 0票数 1

这可能是一个非常基本的问题,但我只是对oracle 10g中嵌套表的用法感到困惑。我们真的需要在插入之前对它们进行初始化和扩展吗?还是在10g版本中不需要。我审查了一些旧代码,发现它们在包中声明嵌套表,然后使用大容量收集在其中插入值,并且在插入嵌套变量之前没有使用初始化(构造函数)或扩展方法。这段代码工作正常。请确认我在这里错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-23 16:25:05

在使用bulk collect时,不需要初始化或扩展嵌套表,但在PL/SQL代码中显式添加行时确实需要这样做。

散装收集:

代码语言:javascript
运行
复制
declare
   l_tab some_table_type;
begin
   select a, b, c
   bulk collect into l_tab
   from mytable;
end;

对于PL/SQL:

代码语言:javascript
运行
复制
declare
   l_tab some_table_type;
begin
   l_tab := some_table_type(); -- Initialise before use
   for r in 
   ( select a, b, c
     from mytable
   )
   loop
      l_tab.extend(); -- Extend before adding row
      l_tab(l_tab.count) := r;
   end loop;
end;

我想您可以说bulk collect为您进行初始化和扩展。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28677860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档