/* * This sample shows how to use the batching extensions. * In this example, we demonstrate the sue of the "sendBatch" API. * This allows the user to actually execute a set of batched * execute commands. * */ // You need to import the java.sql package to use JDBC import java.sql.*; // You need to import oracle.jdbc.driver.* in order to use the // API extensions. import oracle.jdbc.driver.*; class SendBatch { public static void main (String args []) throws SQLException { // Load the Oracle JDBC driver DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); // Connect to the database // You can put a database name after the @ sign in the connection URL. Connection conn = DriverManager.getConnection ("jdbc:oracle:oci7:@", "scott", "tiger"); Statement stmt = conn.createStatement (); // Default batch value set to 50 for all prepared statements belonging // to this connection. ((OracleConnection)conn).setDefaultExecuteBatch (50); PreparedStatement ps = conn.prepareStatement ("insert into dept values (?, ?, ?)"); ps.setInt (1, 32); ps.setString (2, "Oracle"); ps.setString (3, "USA"); // this execute does not actually happen at this point System.out.println (ps.executeUpdate ()); ps.setInt (1, 33); ps.setString (2, "Applications"); ps.setString (3, "Indonesia"); // this execute does not actually happen at this point int rows = ps.executeUpdate (); System.out.println ("Number of rows updated before calling sendBatch: " + rows); // Execution of both previously batched executes will happen // at this point. The number of rows updated will be // returned by sendBatch. rows = ((OraclePreparedStatement)ps).sendBatch (); System.out.println ("Number of rows updated by calling sendBatch: " + rows); ps.close (); } }