Example of SQL Batch

From Java Example Source Code

Jump to: navigation, search

Contents

[edit] Overview - Example of SQL Batch

This is a example of Java program.

[edit] Java Source Code

  • Package: reese.george
  • File: Batch.java
package reese.george;
 
/*
 
 Database Programming with JDBC and Java, Second Edition
 By George Reese
 ISBN: 1-56592-616-1
 
 Publisher: O'Reilly
 
 */
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Iterator;
 
/**
 * Example 4.1.
 */
public class Batch {
    static public void main(String[] args) {
	Connection conn = null;
 
	try {
	    ArrayList breakable = new ArrayList();
	    PreparedStatement stmt;
	    Iterator users;
	    ResultSet rs;
 
	    Class.forName(args[0]).newInstance();
	    conn = DriverManager.getConnection(args[1], args[2], args[3]);
	    stmt = conn.prepareStatement("SELECT user_id, password "
		    + "FROM user");
	    rs = stmt.executeQuery();
	    while (rs.next()) {
		String uid = rs.getString(1);
		String pw = rs.getString(2);
 
		// Assume PasswordCracker is some class that provides
		// a single static method called crack() that attempts
		// to run password cracking routines on the password
		// if( PasswordCracker.crack(uid, pw) ) {
		// breakable.add(uid);
		// }
	    }
	    stmt.close();
	    if (breakable.size() < 1) {
		return;
	    }
	    stmt = conn.prepareStatement("UPDATE user "
		    + "SET bad_password = 'Y' " + "WHERE uid = ?");
	    users = breakable.iterator();
	    while (users.hasNext()) {
		String uid = (String) users.next();
 
		stmt.setString(1, uid);
		stmt.addBatch();
	    }
	    stmt.executeBatch();
	} catch (Exception e) {
	    e.printStackTrace();
	} finally {
	    if (conn != null) {
		try {
		    conn.close();
		} catch (Exception e) {
		}
	    }
	}
    }
}

[edit] What Result You Can Get

Run the program, you will get:




[edit] Required External Library for this Java Example

Need nothing.


[edit] How to Run this Java Example Program

We recommend running this Java example program with Eclipse.

For assistance in working with Eclipse, please see How to Run Java Program with Eclipse.

It's fairly easy.



[edit] Question & Answer

Any question?

Click edit and post your question or answer here.


Personal tools