Oracle Ref Cursors只能与过程和函数一起使用吗?

时间:2012-07-02 18:42:48

标签: oracle plsql odp.net

Oracle Ref Cursors只能用于过程和函数,还是可以用于通过ODP.NET OracleCommand对象发布的PL / SQL(在CommandText属性中包含为字符串)?

1 个答案:

答案 0 :(得分:1)

这取决于你想要完成的任务。

您当然可以从.Net或内部使用REF CURSOR的Java应用程序执行匿名PL / SQL块。但是,由于匿名PL / SQL块不接受或返回参数,因此您无法将在匿名PL / SQL块中打开的REF CURSOR返回给调用应用程序。

从应用程序架构的角度来看,我强烈建议如果您需要进行需要PL / SQL的处理,那么该处理应该合并到一个命名的PL / SQL块(一个过程或一个函数)中。包并存储在数据库中。在PL / SQL中实现的逻辑存储在数据库之外通常是个坏主意。