Java tutorial
import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; public class DemoPreparedStatementSetBinaryStream { public static Connection getConnection() throws Exception { String driver = "oracle.jdbc.driver.OracleDriver"; String url = "jdbc:oracle:thin:@localhost:1521:databaseName"; String username = "name"; String password = "password"; Class.forName(driver); Connection conn = DriverManager.getConnection(url, username, password); return conn; } public static void main(String[] args) throws Exception { String smallFileName = "smallFileName.dat"; String largeFileName = "largeFileName.dat"; Connection conn = null; PreparedStatement pstmt = null; try { conn = getConnection(); File smallFile = new File(smallFileName); int smallFileLength = (int) smallFile.length(); InputStream smallStream = (InputStream) new FileInputStream(smallFile); File largeFile = new File(largeFileName); int largeFileLength = (int) largeFile.length(); InputStream largeStream = (InputStream) new FileInputStream(largeFile); String query = "insert into binary_table(id, raw_column, long_raw_column) values(?, ?, ?)"; conn.setAutoCommit(false); pstmt = conn.prepareStatement(query); pstmt.setString(1, "0001"); pstmt.setBinaryStream(2, smallStream, smallFileLength); pstmt.setBinaryStream(3, largeStream, largeFileLength); // execute query, and return number of rows created int rowCount = pstmt.executeUpdate(); System.out.println("rowCount=" + rowCount); conn.commit(); } finally { pstmt.close(); conn.close(); } } }