- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我猜这是一个反复出现的问题,但还没有找到合适的解决方案。基本上,我试图通过 DB2 过程将有点大的 XML,即 32000 多个字符插入到 CLOB 列中。插入失败并显示以下错误看起来 DB2 正在将输入视为字符串而不是 CLOB 数据类型。您能建议需要做什么吗?
SP
CREATE OR REPLACE PROCEDURE logging (IN HEADERDATA CLOB(10M))
LANGUAGE SQL
BEGIN
INSERT INTO Logging(Header) VALUES (HEADERDATA);
COMMIT;
END
错误
The string constant beginning with
"'<?xml version="1.0" encoding="UTF-8"?><XXXXXXXX xmlns:xsi="http:" is too long..
SQLCODE=-102, SQLSTATE=54002, DRIVER=XXXXXX
最佳答案
DB2 中的字 rune 字限制为大约 32K 字节。要处理更大的 LOB,您需要避免使用 SQL 文字值。
无需额外编程即可完成此操作的一种方法是将 [future] CLOB 内容写入文件并使用 IMPORT
或 LOAD
将其内容插入到列中。
或者,您可以围绕您的过程调用包装一个简单的 Java 程序,您将在其中使用 PreparedStatement.setClob()
来处理您的大型 XML 文档。
关于database - 无法将 CLOB 数据存储到 DB2 中的 CLOB 定义列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44871254/
我正在尝试将作为 StrignBuffer 的 XML 响应保存到方法中。 我需要将此字符串数据作为 CLOB 保存到 Sql 并检索相同的数据。 响应最大3-4Kb,需要再次检索到StringBuf
我目前正在使用 oracle.sql.CLOB 绑定(bind)到 Oracle Clob。 使用有什么好处 java.sql.Clob clob = con.createClob(); 而不是使用创
我想更新一列是CLOB类型,方法如下; public boolean formVeriGuncelleSil(String sql) throws VeritabaniException {
我猜这是一个反复出现的问题,但还没有找到合适的解决方案。基本上,我试图通过 DB2 过程将有点大的 XML,即 32000 多个字符插入到 CLOB 列中。插入失败并显示以下错误看起来 DB2 正在将
我最近升级了一个应用程序以使用 JAVA 7 和 JBoss 7.1.1 运行该应用程序最初是在 JAVA 5 和 Jboss 4.2.2 上开发的。此应用程序使用 hibernate 3 进行持久化
一些背景:数据库是甲骨文。我正在尝试为表格的每一行创建一个分隔字符串。分隔字符串的某些值必须来自 CLOB(包含 XML)。 CLOB 在某些行上可能为空,这就是问题所在。 例如,我有一个表:'Ite
我有一个很大的 CLOB(超过 32kB),我想使用 StringBuilder 将其读取到字符串中。我如何以最有效的方式做到这一点?我不能为 StringBuilder 使用“int length”
我在 Oracle 11GR2 上使用最新版本的 DBUnit (2.4.7)。我正在使用 Java 6 (1.6.0_15) 和最新版本的 Oracle 客户端 jar (jdbc6.jar) 我一
关于这个主题有很多类似的问题,但我找不到任何解决方案,考虑到最终结果对于 varchar2 来说太大。 所以我想要做的是改变这一点: Column1 | Column2 -------- ------
我们正在尝试在 CLOB 字段中应用子字符串函数来修剪前 4000 个字符。我们收到以下错误消息。 下面是我们正在使用的查询: select cast(substr(field_name,1,4000
我有一个字符串“stringData”,我想将其转换为 Clob,你能帮我吗? 我已经尝试过: Clob clob = new SerialClob(stringData.toCharArray())
我对 CLOB 类型的数据对象不熟悉。我正在使用JAVA编程语言来编码。 我的问题是如何将音频文件转换为 CLOB? 我应该将文件转换为字符数组吗?或者还有其他办法吗? 谁能指导我完成此操作的教程吗?
我知道它可以通过使用 SQL 来实现 update activity set REFERENCE = EMPTY_CLOB() where id = ? 但我不能这样做,我不能在 SQL 中硬编码“E
我们正在尝试在 CLOB 字段中应用子字符串函数来修剪前 4000 个字符。我们收到以下错误消息。 下面是我们正在使用的查询: select cast(substr(field_name,1,4000
如何将 Clob 数据转换为 Binarystream ? 到目前为止,我可以通过 2 个步骤找到它,1--> CLOB 到字符串 2---> 字符串到 BinaryStream。 我正在调用一个具有
我有一个超过 5000 个字符的字符串,我想用 MyBatis 将其保存为 XMLTYPE。为此,我执行以下操作: 将字符串转换为 CLOB,CLOB 使用它通过构造函数将其保存在数据库中:XMLTY
当我尝试在 CLOB 列上使用 LAG 函数时遇到问题。 假设我们有一张 table create table test ( id number primary key, not_cl
我有一个具有以下 NLS 设置的数据库 NLS_NCHAR_CHARACTERSET - AL16UTF16 NLS_CHARACTERSET - AL32UTF8 有一个带有 clob 列的表,其
我在一个包含大量 XML 数据的表中有一个 CLOB 列。我需要为表格的一行更新此列的值。我该怎么做? 我试过谷歌搜索,但这种明显简单的东西在任何地方都无法以简单的语言提供。有人可以建议吗? 如果我使
我想知道 Oracle 的 CLOB 必须通过 BLOB 数据类型提供什么。 Both数据存储限制为 (4 GB - 1) * DB_BLOCK_SIZE。 长度超过 4000 字节的文本字符串不能放
我是一名优秀的程序员,十分优秀!