如何在jdbc中设置longvarbinary值?

时间:2014-01-08 13:31:20

标签: jdbc hsqldb

我读到为了填充Insert查询的二进制值,你需要创建一个PreparedStatement,然后使用setBytes()API将字节数组设置为二进制参数。

我的问题是,当我做同样的事情时,我得到了数据异常:字符串数据,右截断"。

我读到这一点,如果我们填充大小超过声明大小的值,可能会出现这种情况。但在这里我使用的是一个非常小的字节[](" s" .getbytes())。

我也尝试了setBinaryStream()但结果相同!

我也试过设置空值。我仍然得到同样的错误。

1 个答案:

答案 0 :(得分:0)

VARBINARY或LONGVARBINARY列的长度必须足以接受您要插入的数据。您的CREATE TABLE语句可以包含VARBINARY作为列的类型,每个数据项最多允许16MB。

如果使用BINARY作为类型,则表示只允许一个字节。