我得到一个例外
com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.
在以下行引发异常:
PrepareStmt.setBinaryStream(1, new ByteArrayInputStream(data), data.length);
updatePrepareStmt.executeUpdate();
我正在使用MS-SQL db。任何人都可以帮我解决这个问题吗?
我尝试插入数据的列的数据类型是varbinary,数据的长度也不大。我只是插入“测试”。
更新
现在我增加了数据类型varbinary的大小。它达到了1024,但我现在得到了新的例外: -
com.microsoft.sqlserver.jdbc.SQLServerException:该 从varbinary到BLOB的转换是 不支持的
有人可以评论这个例外吗?
答案 0 :(得分:3)
作为异常消息sais,您的数据似乎比应该写入的数据库字段大。 data.length
的最大值是多少,列的最大长度是多少?
答案 1 :(得分:0)
增加列容量..如果是varchar(20)
使其成为varchar(200)
或可以容纳您数据的内容。