【发布时间】:2021-03-18 00:00:47
【问题描述】:
我有一个超过 4000 个字符的 XML。 XMLTYPE 中 Oracle 中的数据类型。插入或执行脚本组件不允许我将此 XML 插入 Oracle 。我无法更改 Oracle 中的数据类型。有什么方法可以将 XML 插入 XMLTYPE 列。在 Java 中,我可以通过从 Connection 创建 SQLXML 对象来实现它。
SQLXML xml = conn.createSQLXML(); //This allowing to save the xml at any size
我遇到的错误
ORA-01461: can bind a LONG value only for insert into a LONG column
插入语句
insert into ABC(ID,RESPONSE_XML) values(123, :RESPONSE_XML))
转型
'RESPONSE_XML' : write(payload, 'application/xml')
如果我减少有效负载 xml 中的字符数,则其插入成功。我们可以在这里做些什么来插入它。 我使用的 JDBC 驱动程序是 ojdbc14-10g.jar
【问题讨论】:
-
尝试插入超过4000个字符时请添加完整错误,以及字段的DDL。
-
仍然缺少表定义。该错误应包括来自 Mule 的完整错误消息。您应该将流中的完整 mule 操作和转换共享为 XML,而不仅仅是部分 sn-ps
-
除了我最后的评论,还包括JDBC驱动的名称和版本以及数据库连接器配置。