1.How to create BLOB object in java?
2.How to set the BLOB value from db?
3.How to set the BLOB value in DB?
I have create the BLOB object like
byte [] fileId=b.toByteArray();
Blob blob=new SerialBlob(fileId);
But it gives me error..So please any one help me.
Thanks in advance.
1) to create BLOB use Connection.createBlob
2) to write BLOB to DB use PreparedStatement.setBlob
3) to read BLOB from DB use ResultSet.getBlob
Assuming you have table t1 with BLOB column b1:
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
Blob b1 = conn.createBlob();
b1.setBytes(1, new byte[10]); // first position is 1. Otherwise you get: Value of offset/position/start should be in the range [1, len] where len is length of Large Object[LOB]
PreparedStatement ps = conn.prepareStatement("update t1 set c1 = ?");
ps.setBlob(1, b1);
ps.executeUpdate();
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select c1 from t1");
Blob b2 = rs.getBlob(1);