【 使用环境 】测试环境
【 OB or 其他组件 】
【 使用版本 】 OceanBase 4.2.1.7 (r107020012024061213-2a278db71acb476122dd0467fd8a30c047728e27) (Built Jun 12 2024 13:49:17)
【问题描述】
blob 字段超过6000无法保存到数据中 使用的是oracle模式
【复现路径】
JDBC调用采用以下方式,驱动版本:2.4.3
Connection conn = DriverManager.getConnection(url, user, password);
PreparedStatement pstmt = conn.prepareStatement(sql);
// }
pstmt.setString(1,“333”);
// 设置大BLOB数据
StringBuffer str = new StringBuffer("xxxxxxxxxxxx");
for(int i=0;i<4100;i++){
str.append("Y");
}
byte[] blobData = str.toString().getBytes();
/
// Blob b = new com.oceanbase.jdbc.Blob(blobData);
// pstmt.setBlob(2, b);
//pstmt.setBlob(2, new ByteArrayInputStream(blobData));
//pstmt.setBinaryStream(2, new ByteArrayInputStream(blobData));
//pstmt.setBytes(2, blobData);
pstmt.setBinaryStream(2, new ByteArrayInputStream(blobData),blobData.length);
pstmt.setString(3,"1111");
pstmt.setString(4,"1111");
pstmt.setString(5,"1111");
pstmt.setString(6,"1111");
pstmt.setString(7,"1111");
int affectedRows = pstmt.executeUpdate();