Oracle函数返回超长字符串问题

简介: Oracle函数返回字符串时,如果字符串长度过大(约超过1850),则会出现字符缓冲区不足的错误。可以采用出参的方式解决,在编程中再把各出参的值组合。一般编程语言中的字符串可以足够长。另外,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,如有错误望高手指教。

目录
相关文章
|
2月前
|
SQL Oracle 关系型数据库
Oracle查询优化-计算字符在字符串中出现的次数
【2月更文挑战第3天】【2月更文挑战第7篇】只接上SQL
47 0
|
4月前
|
SQL Oracle 关系型数据库
Oracle之日期计算相关函数
Oracle之日期计算相关函数
45 0
|
4月前
|
SQL Oracle 关系型数据库
Oracle之regexp系列函数详解
Oracle之regexp系列函数详解
127 1
|
3月前
|
存储 Java 数据库
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数(二)
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数
34 0
|
3月前
|
SQL Oracle 关系型数据库
JAVAEE框架数据库技术之12_oracle常用函数和高级查询子查询
JAVAEE框架数据库技术之12_oracle常用函数和高级查询子查询
66 0
JAVAEE框架数据库技术之12_oracle常用函数和高级查询子查询
|
4月前
|
SQL Oracle 关系型数据库
Oracle之如何遍历字符串
Oracle之如何遍历字符串
44 1
|
1月前
|
SQL Oracle 关系型数据库
Oracle insert数据时字符串中有‘单引号问题
Oracle insert数据时字符串中有‘单引号问题
|
2月前
|
SQL Oracle 关系型数据库
Oracle查询优化-聚集函数
【2月更文挑战第5天】【2月更文挑战第13篇】聚集函数
19 4
|
2月前
|
Oracle 关系型数据库
Oracle查询优化-在字符串删除特定字符
【2月更文挑战第4天】【2月更文挑战第8篇】比较灵活,列举三个常见的方式
50 0
|
2月前
|
Oracle 关系型数据库
Oracle查询优化-遍历字符串
【2月更文挑战第3天】【2月更文挑战第6篇】Oracle查询优化-遍历字符串
17 0

推荐镜像

更多