oracle中强弱的ref_cursor之间的区别

时间:2011-05-18 09:31:40

标签: oracle plsql cursor

我想知道强弱ref cursor之间的实际区别。

ref_cursor将始终用于返回值,编译器在编译时知道结构,但在弱ref cursor中它不会返回值,并且编译器在执行期间不知道结构编译时间。

这是基本的区别,但我的问题是强ref cursor将返回什么值以及将使用返回值的位置。

2 个答案:

答案 0 :(得分:7)

强类型引用游标始终返回已知类型,通常来自声明的TYPE对象。编译器可以通过比较返回的类型与它们的使用方式来发现PL / SQL块中的问题。

弱类型引用游标的返回类型取决于它执行的SQL语句,即只有在打开游标时才会知道类型(在运行时)。编译器在运行之前无法确定类型,因此必须注意确保正确处理游标结果集以避免运行时错误。

答案 1 :(得分:0)

强参考光标和弱参照光标之间还有一个区别是强参考光标中的动态查询是不可能的,因为在弱参考光标中可以使用