1

由于 varchar2 仅限于 2000,如何显示此 sql 查询的其余 xml?

列 msg 是一个包含压缩 XML 的 blob
每行将具有不同的 msg 长度,范围至少为 500 到 6000 字节

select utl_raw.cast_to_varchar2(dbms_lob.substr(utl_compress.lz_uncompress(xml.msg),2000,1)) as XML_Msg from xml_table xml;

这可能是一个可能的解决方案将 Blob 转换为 Varchar 数据类型,但我不知道它会对我的数据库做什么。

4

1 回答 1

0

在 Oracle 中,您可以从 blob 数据类型中检索的 MAX 为 4000 字节,下面是可以完成这项工作的语句。两周前我遇到了同样的问题,请参阅我的帖子了解更多详细信息。用于从 LOB 数据类型的 Oracle_db 中检索大字符串的 Java 类

   Select  dbms_lob.substr( BLOB_FieldName, 4000, 1 ) 
   from Database name Where [Condition];
于 2013-07-17T02:47:25.397 回答