25.PL/SQL: 数字或值错误 : 字符串缓冲区太小 ORA-06512: 在 "WMSYS.WM_CONCAT_IMPL", line 30 实际报错的SQL异常复杂,现抽取出来大概是这样子: SELECT WMSYS.WM_CONCAT(DISTINCT COMPNAME) FROM (SELECT * FROM (SELECT NEWSCODE,COMPCODE FROM T_NEWS_COMPANY_BD) A INNER JOIN TQ_COMP_INFO C ON ...
该函数作用是把列值合并(用英文逗号分割),但是数量有限制,返回的字符数上线是4000(oracle11g),超过会报错,听说oracle版本到 11.2.0.2.0 或以上返回的是clob类型,长度就很长了,但是没有试过 select wm_concat(colName) from table
wm_concat函数是oracle拼接字符串常用函数,但是这函数并不是oracle官方推荐的,估计oracle在后续更新中会悄无声息的去除,在oracle 11g之前可以使用wm_concat,但是如果拼接字符串超过3000就会报错 Oracle ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小这个错误 解决办法: 官方建议自己建立一个函数实现相同的行列...
25.PL/SQL: 数字或值错误 : 字符串缓冲区太小 ORA-06512: 在 "WMSYS.WM_CONCAT_IMPL", line 30 2016-09-12 20:34 −实际报错的SQL异常复杂,现抽取出来大概是这样子: SELECT WMSYS.WM_CONCAT(DISTINCT COMPNAME) FROM (SELECT * FROM (SELECT NEWSCODE,COMPCODE FROM T_NEWS_COMPANY_BD) A INNER J...
25.PL/SQL: 数字或值错误 : 字符串缓冲区太小 ORA-06512: 在 "WMSYS.WM_CONCAT_IMPL", line 30 实际报错的SQL异常复杂,现抽取出来大概是这样子: SELECT WMSYS.WM_CONCAT(DISTINCT COMPNAME) FROM (SELECT * FROM (SELECT NEWSCODE,COMPCODE FROM T_NEWS_COMPANY_BD) A...