线上遇到bug,日志显示错误ORA-64203: Destination buffer too small to hold CLOB data after character set conversion,目标缓冲区太小, 无法容纳字符集转换之后的 CLOB 数据。

sql如下:

select to_char(rtrim(substr(xmlagg(xmlparse(content zy || ',' wellformed) order by zy).getclobval(),0,4000),','))
from UT_CW_KMMXZ

sql中使用 xmlagg拼接字符串,xmlagg(xmlparse(content  内容  || ',' wellformed)  order by 字段).getclobval(),没有问题。

问题出在to_char()函数,to_char()转换字符串时最大长度为4000,但是zy字段中包含中文,生产数据库字符集为UTF-8,通过查询中文占用的字节长度得知1个汉字占用3个字节,substr截取4000个字符中包含汉字,长度大于4000,因此报错。

SQL> SELECT  LENGTH('您好') FROM DUAL;LENGTH('您好')
--------------2SQL> SELECT  LENGTHB('您好') FROM DUAL;LENGTHB('您好')
---------------6

修改为substr截取1300个字符,to_char()转换时正常,问题解决!

select to_char(rtrim(substr(xmlagg(xmlparse(content zy || ',' wellformed) order by zy).getclobval(),0,1300),','))
from UT_CW_KMMXZ

ORA-64203: 目标缓冲区太小, 无法容纳字符集转换之后的 CLOB 数据相关推荐

  1. ORA-64203: 目标缓冲区太小, 无法容纳字符集转换之后的 CLOB 数据。

    报错原因:在网上查询了一下,应该是由于content字段是clob字段,字符长度超过了char类型的缓冲区最大限制,所以才报错的. 解决方法:通过dbms_lob.substr 函数取出子串,然后通过 ...

  2. ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小解决办法

    1.今天写的存储过程在执行过程中,报如下错误. exec PRO_T_008pro_update_add_delete(17,1,1,1,1,45.0,54.0,45.0,45.0,45.0,54.0 ...

  3. Oracle bug 使用max或min函数into到一个char类型报字符缓冲区太小的错误

    这个BUG出现会报错如下: selectto_char(max(RENEWAL_DATE)) intoM_YEAR_MONTH fromt_renewal_schedule; ORA-06502: P ...

  4. 生成awr报告时报ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小

    生成awr报告时报错: ERROR: ORA-06502: PL/SQL: 数字或值错误 :  字符串缓冲区太小 ORA-06512: 在 "SYS.DBMS_WORKLOAD_REPOSI ...

  5. 也谈Oracle异常: ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小

    也谈Oracle异常: ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小 参考文章: (1)也谈Oracle异常: ORA-06502: PL/SQL: 数字或值错误 : 字符 ...

  6. recv发送失败 缓冲区太小_从 GFS 失败的架构设计来看一致性的重要性

    作者简介 陈东明,饿了么北京技术中心架构组负责人,负责饿了么的产品线架构设计以及饿了么基础架 构研发工作.曾任百度架构师,负责百度即时通讯产品的架构设计.具有丰富的大规模系统构 建和基础架构的研发经验 ...

  7. 字符串缓冲区太小怎么解决_epoll的两种模式 ET和LT printf的缓冲区问题 边缘非阻塞模式...

    学习于:https://www.bilibili.com/video/av44660437/?p=9 前文:何柄融:多路复用I/O select poll epoll 何柄融:select poll ...

  8. vm_comcat报错 - 数字或值错误 : 字符串缓冲区太小

    之前一直纠结怎么修改缓存,后来搜索11g wm_concat ,才知道是版本不对. 11.2.0.3版本可以将varchar2转换成clob.

  9. clobzh字符串缓冲区太小的解决方法_用4K屏玩LOL英雄联盟游戏指针太小解决方法已找到...

    换了4K屏后玩LOL指针过小,游戏内可调指针大小根本没用,感觉游戏都不会打了,琢磨好久找到一个可行的方法给大家分享一下 找到游戏文件→右键游戏图标属性→兼容性→更改高DPI设置→勾选替代高DPI缩放行 ...

最新文章

  1. 类中成员函数声明后面的const的含义
  2. CentOS7——卡在在启动界面
  3. [转]Android 代码混淆和加固 so库 简单教你一行代码实现
  4. 003-JavaString数据类型
  5. 2016年第12本:成功就靠专注一件事
  6. mysql批量取消多行sql_mysql批量删除指定前缀的表,批量修改表名的SQL语句
  7. php删除图片按钮代码,jquery 按钮预览图片功能的代码,我看不太懂。应该怎么学...
  8. Python是最好的编程语言,Locust是最好的压测工具,不服来辩!
  9. java获取汉字的拼音首字母_java获取汉字的拼音首字母
  10. Mac技巧:如何使用macOS Big Sur中“通知中心”的小组件?
  11. 导入项目时遇到的plugin with id com.android.application not found问题解决方案
  12. 从零开始设计RISC-V处理器——指令系统
  13. node.js 刷csdn博客访问量
  14. 运放TL08系列,功放LM386,8欧姆的扬声器
  15. 互联网/计算机 校园招聘信息大全!
  16. 信号与系统—让我们来了解信号
  17. vue实现刷新页面随机切换背景图【适用于登陆界面】
  18. 朱有鹏老师linux核心大讲堂---ARM裸机第十一部分 NandFlash和iNand学习笔记
  19. 了解公司企业:Intuit
  20. LoadCursor 函数

热门文章

  1. linux部署csgo服务器,CSGOLinux服务器架设20150311_图文.doc
  2. C语言编程常用宏定义
  3. 初学Python,爬取王者荣耀英雄介绍及皮肤下载
  4. 全面讲解手推实战之线性回归
  5. 微信小程序 右上角分享 实现代码
  6. 【转帖】Java实现Excel批量导入数据
  7. 企业网盘应用,加速上海交大信息化校园建设
  8. 通信光缆故障抢修4大基本原则!
  9. 设备安全——入侵检测IDS
  10. 近视眼手术之后计算机专业,白领人士做完近视眼手术后,可以正常用电脑工作吗?...