同题目:
CREATE OR REPLACE PROCEDURE P_QuerySQL_Build
(
  QuerID in VARCHAR2,
  ConditionClauses in VARCHAR2,
  ReutrnFullSQL out varchar2
) IS
BEGIN
 --排序条件设置
 if sqlQueryCompositor <> ''
   then
      sqlQuery := sqlQuery || 'ORDER BY ' || sqlQueryCompositor;
 end if;
 
 ReutrnFullSQL := sqlQuery;
   EXCEPTION
     WHEN NO_DATA_FOUND THEN
       NULL;
     WHEN OTHERS THEN
       rollback;
       RAISE;
END P_QuerySQL_Build;

解决方案 »

  1.   

    declare
      R_fsql varchar2;
    begin
      P_QuerySQL_Build('sdfsdf','sdfdsf',R_fsql);
      
    end;
      

  2.   

    我用TOAD调试时就报错了!!
      

  3.   

    .NET环境下调用出现:
    ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小 ORA-06512: 在 "HR.P_QUERYSQL_BUILD", line 127 ORA-06512: 在 line 1 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。