Mega Code Archive

 
Categories / Java Tutorial / Database
 

Insert Binary Data into a Database Table Using a Statement

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; public class Main {   public static void main(String[] args) throws Exception {     Connection conn = getConnection();     Statement stmt = conn.createStatement();     stmt.executeUpdate("create table survey (id int, name BINARY );");     String sql = "INSERT INTO survey (name) VALUES(?)";     PreparedStatement pstmt = conn.prepareStatement(sql);     // create some binary data     String myData = "some string data ...";     byte[] binaryData = myData.getBytes();     // set value for the prepared statement     pstmt.setBytes(1, binaryData);     // insert the data     pstmt.executeUpdate();          ResultSet rs = stmt.executeQuery("SELECT * FROM survey");     while (rs.next()) {         System.out.print(rs.getBytes(2).length + "   ");     }          rs.close();     stmt.close();     conn.close();   }   private static Connection getConnection() throws Exception {     Class.forName("org.hsqldb.jdbcDriver");     String url = "jdbc:hsqldb:mem:data/tutorial";     return DriverManager.getConnection(url, "sa", "");   } }