存储过程OUT为CLOB

时间:2015-10-27 11:05:28

标签: sql oracle stored-procedures

以下是我的存储过程(Oracle)。目前,RET_RESULT OUT是VARCHAR2。有人建议我使用CLOB而不是VARCHAR2。你能帮助我在程序中如何使用RET_RESULT CLOB作为OUT。我必须以逗号分隔的值返回结果。

我在网上阅读并找到DBMS_LOB.write并追加。但不知道如何在这里使用它们。

create or replace PROCEDURE_DIV
( 
  CALL_NUMBER IN VARCHAR2, 
  XCALL_NUMBER IN VARCHAR2, 
  RET_RESULT OUT VARCHAR2,
)

AS
......

BEGIN

......
 RET_RESULT := var_g ||','|| var_c ||','|| var_r ;

END;

1 个答案:

答案 0 :(得分:0)

我这样做:

create or replace PROCEDURE_DIV
( 
  CALL_NUMBER IN VARCHAR2, 
  XCALL_NUMBER IN VARCHAR2, 
  RET_RESULT OUT CLOB,
)
AS
......

BEGIN

......
 RET_RESULT := EMPTY_CLOB() || var_g ||','|| var_c ||','|| var_r ;

END;