暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 如何从clob返回varhar类型

askTom 2017-02-22
455

问题描述

嗨,

使用dbms_lob.substr(),我可以提取最多4k字符,但我想提取所有字符 (6k字符中的6k)。重要的是,我应该返回char或varchar类型。

喜欢下面的查询

dbms_lob.substr(x,6000,1)。

谢谢

专家解答

varchar2 (以11g为单位) 具有4000字节的上限。因此,您不能将 * 超过 * 4000个字节作为varchar2返回。

您可以返回 * 多个 * varchar2变量,例如

select 
  dbms_lob.substr(x, 4000, 1),
  dbms_lob.substr(x, 4000, 4001),
  dbms_lob.substr(x, 4000, 8001),
  dbms_lob.substr(x, 4000, 12001)
  ...
from 
  ...
复制


但这正是为什么clob存在-对于字符串 * 比4000更长 *。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论