zoukankan      html  css  js  c++  java
  • Oracle函数返回超长字符串问题

    Oracle函数返回字符串时,如果字符串长度过大(约超过1850),则会出现字符缓冲区不足的错误。
    可以采用出参的方式解决,在编程中再把各出参的值组合。一般编程语言中的字符串可以足够长。
    另外,Oracle函数/存储过程中入参中的字符串长度没有如上的限制情况。

    例:
    procedure sp_tb018_sqlCount( p_Conditions in varchar2,
                                   p_Sql1 out varchar2,
                                   p_Sql2 out varchar2,
                                   p_Sql3 out varchar2)
    as
      v_sql varchar2(4500);
    begin
      v_sql := 'SELECT COUNT(*)
                FROM MISTABLE002
                LEFT OUTER JOIN MISTABLE018 on MISFIELD018A01 = MISFIELD002A01
                WHERE  '|| p_Conditions ;
               
      p_Sql1 := substr(v_sql,1,   1500);
      p_Sql2 := substr(v_sql,1501,3000);
      p_Sql3 := substr(v_sql,3001,4500);
    end sp_tb018_sqlCount;

    --不精通Oracle,如有错误望高手指教。

  • 相关阅读:
    创建HttpFilter与理解多个Filter代码的执行顺序
    Filter
    JSTL
    EL
    JavaBean
    HttpSession之表单的重复提交 & 验证码
    相对路径和绝对路径
    HttpSession之简易购物车
    HttpSession
    Cookie
  • 原文地址:https://www.cnblogs.com/SummerRain/p/214066.html
Copyright © 2011-2022 走看看