我怎么知道PL / SQL上游标的长度

时间:2016-10-10 15:32:16

标签: sql oracle plsql

我怎么知道光标的长度?

我需要做类似的事情:

For i in (select * from table)
loop
    x := i.length
end loop;

我的意思是,我需要考虑长度。

这在PL / SQL上是否可行? 有办法吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

没有办法让光标本身告诉你它的长度。在获取所有行之前,Oracle不知道长度。

它会影响性能,但您可以在光标的SQL中执行此操作:

For i in (select t.*, count(*) over (partition by null) cursor_length from table t)
loop
    x := i.cursor_length;
end loop;