oracle常见wm_concat函数的oracle.sql.CLOB@xxxx问题

oracle常见wm_concat函数的oracle.sql.CLOB@xxxx问题

默认情况下wm_concat行列转化函数会返回clob格式的数据,是不能直接显示的,解决方式:

一、

用listagg()函数替换,listagg()返回的格式是字符串
用法和wm_concat对比如下:
	wm_conca(字段名)as 别名,
	 listagg(字段名, ',') within group(order by rownum) as 别名,
**注意:listagg()不支持distinct,返回的是varchar2类型,最大拼接长度为4000**

二、

修改代码,读取clob用流的方法读取文本内容
方法如下:
	Clob clob=(CLOB)a.get("NAME");

	Reader is=clob.getCharacterStream();

	char [] c= new char[(int)clob.length()];

	is.read(c);

	data=new String(c);

	is.close;
发布了30 篇原创文章 · 获赞 5 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/rocrunwang/article/details/105262383