我怎么知道光标的长度?
我需要做类似的事情:
For i in (select * from table)
loop
x := i.length
end loop;
我的意思是,我需要考虑长度。
这在PL / SQL上是否可行? 有办法吗?
非常感谢。
答案 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;