Java存储过程Vs PL/SQL存储过程



在Oracle DBMS中,从另一个pl/sql存储过程调用java存储过程或从另一个pl/sql存储过程调用pl/sql存储过程,这是更好的性能。

顺便说一下,我在pl/sql过程中有一个循环,它将多次调用java过程(即我的代码在pl/sql和java存储过程之间翻转),所以这会减慢性能吗?

任何从一种语言切换到另一种语言都会涉及到开销(它可能很小,但它仍然存在)。如果它在循环中,它将被强调。

保持简单,如果你可以坚持PL/SQL,那就这样做。

Tom Kyte (Oracle公司的副总裁和导师)有一个咒语,似乎适合在这里重复:

(参考:http://tkyte.blogspot.com/2006/10/slow-by-slow.html)
    如果可能的话,你应该在一条SQL语句中完成。
  • 如果你不能在单个SQL语句中完成,那么在PL/SQL中完成。
  • 如果你不能在PL/SQL中做到这一点,试试Java存储过程。如果你不能在Java中完成,可以在C外部过程中完成。
  • 如果你不能在C外部例程中做到这一点,你可能要认真考虑为什么你需要这样做…

最新更新