如何植树ORA-22922:nonexistentLOBvalue错误解决⽅案【说明】:⼀般提⽰此类错误说明在取⼤类型字段时(如:clob)进⾏了类型转换或者数据截取(如:to_char,substr等), ⽽转换列的数据值为NULL。
【解决】:我遇到的这个问题的使⽤原因在于使⽤了WM_CONCAT(列转⾏)函数时数据字段过长,只想截取保留部分长度。 那么这时是不能使⽤to_char函数的,因为to_char和WM_CONCAT分配的内存⼤⼩不⼀致,也会报类似的错误。
此时改⽤了DBMS_LOB.SUBSTR函数,问题还未解决。
一个人过生日>约翰特里大学秘书处 问题发⽣在SQL做了嵌套,这时DBMS_LOB.SUBSTR函数⼀定要写在最外层。
【总结】:1、如果使⽤了to_char函数时,只有在字符串长度超过4000时才会显露问题,很难查。
2、WM_CONCAT⾏转列时数据为NULL时,问题才暴露出来。
饥荒攻略【例⼦】:SELECT A.* FROM (SELECT DBMS_LOB.SUBSTR(WM_CONCAT(B.F1),2000,1) FF1,
元宵节彩灯有哪些
DBMS_LOB.SUBSTR(WM_CONCAT(DISTINCT B.F2),2000,1) FF2 FROM B)A;
如何做汤圆
改成
女生有哪些类型
SELECT DBMS_LOB.SUBSTR(A.FF1,2000,1) F1,DBMS_LOB.SUBSTR(A.FF2,2000,1) F2
FROM (SELECT WM_CONCAT(B.F1) FF1,WM_CONCAT(DISTINCT B.F2)FF2 FROM B)A;