当前位置: 首页 > 知识库问答 >
问题:

CLOB字段上的子字符串

暴英达
2023-03-14

我们试图在CLOB字段中应用子字符串funciton来修剪前4000个字符。我们得到以下错误信息。

下面是我们使用的查询:

select
cast(substr(field_name,1,4000) as varchar(4000))
from table_name;

错误报告:

SQL错误:ORA-22835:缓冲区太小,CLOB无法进行字符转换或BLOB无法进行原始转换(实际:8000,最大值:4000)
22835。00000-“缓冲区太小,无法将CLOB转换为CHAR或BLOB转换为RAW(实际:%s,最大值:%s)”
*原因:试图将CLOB转换为CHAR或BLOB转换为RAW,其中LOB大小大于CHAR和RAW类型的缓冲区限制。请注意,如果字符长度语义对列有效,则以字符为单位报告宽度,否则以字节为单位报告宽度。在html" target="_blank">执行转换之前使LOB变小,例如在CLOB2上使用SUBSTR。使用dbms_lob.substr将CLOB转换为CHAR或将BLOB转换为RAW。

共有1个答案

贡正诚
2023-03-14

使用dbms_lob.substr的备选方案:

dbms_lob.substr(clob_field_name, desired_size)

不需要强制转换。

 类似资料:
  • 问题内容: 在MySQL中,使用LIKE非常普遍。我们使用它是这样的:。我们有一个子字符串,而字段有完整的字符串。但是我需要的是相反的东西。我在字段中有子字符串。因此,我希望该行包含我的字符串的子字符串。假设表是: 而且我有一个来自用户的字符串:。我需要返回这样的MySQL查询,因为这是用户字符串的子字符串。就像是: 提前致谢。 问题答案: 您在寻找LIKE运算子 模式匹配使用SQL简单的正则表达

  • 我有映射: 和一些文件: 等等。 我尝试进行查询: 未找到任何结果。如果我尝试将同一查询按字段与其他类型(不是字符串,也没有原始子字段)一起使用,它会起作用。我应该如何为这种情况编写查询?谢谢 P、 美国字段“FieldA”具有子字段raw,因为我需要同时分析和不分析此字段

  • null 有人能帮我弄清楚为什么上面的代码给出了错误的答案吗?

  • 问题内容: 有没有一种方法可以写一个sql查询来查找所有行,其中字段值是给定字符串的子字符串。 例子: 查询应该是这样的 这怎么可能? 如果不可能的话,那么我将不得不在Java中实现该行为。我正在使用jdbc:mysql驱动程序连接到数据库。 更新 您的解决方案工作 现在有点曲折。如果我们要检查字段的子字符串是否作为我们指定的字符串的子字符串出现。 问题答案: 如果在文本中找到之一或必须使用 没有

  • 问题内容: 有没有一种简单的方法来测试Python字符串“ xxxxABCDyyyy”,以查看其中是否包含“ ABCD”? 问题答案: if “ABCD” in “xxxxABCDyyyy”: # whatever

  • 问题内容: 基本上,我试图按其名称对表进行排序。该表相对较大,但出于示例目的,我仅发布了一列。列在下方 上面的排序是通过尝试以下操作实现的: 但是,我无法对EPA WELL 108S进行分类。我需要它在EPA WELL 108和EPA WELL 109之间移动,我尝试了许多不同的方法。 EPA之后,电台列表也会继续。 问题答案: 该解决方案比所选答案更可靠。如果站中有超过1个数字(例如“ EPA