2013-02-19 29 views
1

在我的一个应用程序中,我试图将一个文件(文件大小为2MB)保存到teradata数据库表中作为BLOB数据通过使用JDBC连接。但每次我是越来越一个例外,其是如下数据库在尝试存储大小为2MB的文件作为BLOB数据时抛出异常

com.teradata.jdbc.jdbc_4.util.JDBCException:[Teradata的JDBC驱动程序] [TeraJDBC 14.00.00.01] [错误1186] [HY000的SQLState]参数2长度是2215538字节,大于可以设置的最大64000字节。

请帮我解决这个问题。

感谢, Sourav

+1

什么是目标表的定义?听起来就像你试图把10磅'数据'放在一个5磅'袋'里。 – 2013-02-19 14:16:24

回答

0

尝试设置BLOB列更大,或者只是使用系统默认值,为2097088000 BTW。

这是从Teradata的用户之证件:SQL数据类型和面值第7章 “的字节数分配用于BLOB列的最大字节数 是2097088000,这是默认的,如果没有指定n。 “

0

假设您有字符串格式的数据,我们可以使用setCharacterStream来绕过64000字节的限制。

使用preparedStatement时插入大量数据CLOB列作为

pStmt.setCharacterStream(paramterIndex, new StringReader(StringToBeInserted), StringToBeInserted.length()); 
相关问题