使用光标作为参数或在'其中'之间的区别是什么?条款?

时间:2016-12-21 08:21:42

标签: oracle plsql

使用光标时遇到问题。

我想知道女巫的方式更快,使用像这样的参数:

CURSOR c (l_para varchar2) IS
   SELECT ... ... 

或者只是将它用作示例where子句:

CURSOR c IS
   SELECT xx 
     FROM table 
    WHERE condition = l_para 
     ... ... 

我应该选择哪种方式?

1 个答案:

答案 0 :(得分:4)

没有功能差异。但是,声明正式的游标参数会使代码更容易阅读并因此调试,因为:

  • 很明显,光标的结果集依赖于注入值
  • 我们可以看到注入值的传递位置,以及它们来自哪里

使用形式参数是一种支持“自我记录”代码的约定。这是一个很好的做法。