我编写了一个Java程序,它在数据库中流式传输大于2GB的XML文件。它适用于Windows上的版本db2版本10.5.5但在以下错误时失败:DB2 Linux 9.7上的SQLCODE = -302,SQLSTATE = 22001,SQLERRMC = null,DRIVER = 4.19.26。 我明白这意味着发送的数据大于列大小。我想知道DB2 9.7是否存在问题,为什么该程序仅适用于10.5,如果是,请建议修复问题。
答案 0 :(得分:0)
我认为这是因为在DB2 for LUW v10.1之前,XML数据被序列化为字符数据以便在JDBC客户端和服务器之间进行传输,并且序列化XML上的限制为2 GB。从版本10.1开始,默认情况下,XML数据以二进制形式传输,并且序列化限制不适用。
如果您必须使用过时的DB2 v9.7,我认为您可以使用DB2 LOAD
命令插入XML文件,如回应您之前的问题所建议的那样。
参考文献: