我是否需要在Oracle PL / SQL函数中释放clob变量?

时间:2014-06-11 10:05:36

标签: oracle plsql clob

我曾使用clob变量在PL / SQL函数中创建一些大型XML。该函数返回此CLOB变量。 这会导致性能下降或内存问题吗?

示例代码:

FUNCTION ABC
   RETURN CLOB
IS
   resultxml   CLOB;
BEGIN
   resultxml := TO_CLOB (' ');

   DBMS_LOB.writeappend (resultxml,
                         LENGTH ('---Some large data-'),
                         '---Some large data-');

   RETURN resultxml;
END;

我现在没有遇到任何问题,但想知道是否可以创建mem。的问题。

1 个答案:

答案 0 :(得分:0)

在这里,不要这样做

在特定情况下,您不得将CLOBDBMS_LOB.FREETEMPORARY(resultxml)一起释放,因为这会导致that等问题。

不是强制性的

一旦超出范围,Oracle将自动释放它。 Oracle says it so:

  

临时LOB实例存在于您的应用程序中,直到它超出范围,您的会话终止,或者您明确释放该实例。

建议

  

建议释放临时LOB实例以释放系统资源。