【问题标题】:insert 32k+ character string in oracle to clob column在 oracle 中插入 32k+ 字符串到 clob 列
【发布时间】:2015-12-04 17:01:24
【问题描述】:

我需要在客户数据库中更新几 (8) 个 clob 列。这些 clob 包含报告的 XML 结构,它们可以运行。新的 XML 结构长度超过 32K 个字符。最小的是 33,786 个字符。

在查看几个问题时,我还没有真正找到我想做的事情的答案。

Update Clob column in Oracle

overcome 32k limit when inserting oracle clob IN parameter using spring StoredProcedure

string literal too long - how to assign long xml data to clob data type in oracle 11g r2

How to insert/update larger size of data in the Oracle tables?

第二个和第四个问题对我来说似乎已经接近答案了。我还简要地查看了dbms_lob 包,但我不知道我是否可以使用这些功能中的任何一个......

我需要遵循的过程:我将拥有所有 8 个新的字符串 xml 结构,并且我需要创建 sql 文件中的更新脚本。然后将这些文件插入到客户数据库中的 CLOB 列中。然后通过执行语句在数据库中提取并执行 clob。

我所要做的就是为列制作更新脚本。其他一切都已经到位并且运行良好。我无法更改流程,所以这不是一个选项。

对我来说最简单的方法是什么?它是否创建了一个临时 LOB 并用第二个问题中回答的数据填充它?它是否以某种方式将 xml 结构分块并将其附加到 clob?

我认为我将不得不做一些奇怪的事情来完成这项工作,因为它看起来不像对我来说有一个简单的单行解决方案。我只是需要一些帮助来解决这个问题......

【问题讨论】:

    标签: xml oracle oracle11g oracle12c


    【解决方案1】:

    据我了解,您需要将文件中某处的大量 XML(或更新脚本,无论您如何称呼它)更新到 CLOB 列中 - 对吗? 如果您无论如何都不需要处理 XML 并将它们放入数据库中,您可以使用 oracle 的引号运算符(我找不到它的 oracle dos 但这里解释得很漂亮):

    http://www.adp-gmbh.ch/ora/sql/q.html

    基本上,您只需按照文章中的说明将整个文本 XML 数据放入括号中:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-23
      • 1970-01-01
      • 2020-01-13
      • 1970-01-01
      • 1970-01-01
      • 2013-07-13
      • 1970-01-01
      相关资源
      最近更新 更多