游标变量.delete做什么?

问题描述 投票:0回答:1

我在我的项目中已经编写了以下代码。我试图理解.delete在下面的代码中做了什么。

CURSOR cur_somecur IS
select * from SomeTable;

TYPE my_cur_ty IS TABLE OF MyTable%ROWTYPE INDEX BY BINARY_INTEGER;
my_cur     my_cur_ty;

FETCH cur_somecur BULK COLLECT
INTO my_cur LIMIT 1000;

...

LOOP

FORALL idx IN 1 .. my_cur.count SAVE EXCEPTIONS  /* This is understood */

...
my_cur.delete;   /* What does this do ? */

END LOOP;
... 
sql oracle plsql
1个回答
0
投票

像这样使用它会从MY_CUR集合中删除所有元素。

Collection methods

该程序有三种形式。 DELETE删除集合中的所有元素。 DELETE(n)从关联数组或嵌套表中删除第n个元素。如果n为null,则DELETE(n)不执行任何操作。 DELETE(m,n)从关联数组或嵌套表中删除m..n范围内的所有元素。如果m大于n或m或n为null,则DELETE(m,n)不执行任何操作。

© www.soinside.com 2019 - 2024. All rights reserved.