Previous | Next | Trail Map | JDBC Database Access | New Features in the JDBC 2.0 API

Making Updates to Updatable Result Sets

Another new feature in the JDBC 2.0 API is the ability to update rows in a result set using methods in the Java programming language rather than having to send an SQL command. But before you can take advantage of this capability, you need to create a ResultSet object that is updatable. In order to do this, you supply the ResultSet constant CONCUR_UPDATABLE to the createStatement method, as you have seen in previous examples. The Statement object it creates will produce an updatable ResultSet object each time it executes a query. The following code fragment illustrates creating the updatable ResultSet object uprs . Note that the code also makes uprs scrollable. An updatable ResultSet object does not necessarily have to be scrollable, but when you are making changes to a result set, you generally want to be able to move around in it. With a scrollable result set, you can move to rows you want to change, and if the type is TYPE_SCROLL_SENSITIVE , you can get the new value in a row after you have changed it.

Connection con = DriverManager.getConnection("jdbc:mySubprotocol:mySubName");
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, 
ResultSet uprs = stmt.executeQuery("SELECT COF_NAME, PRICE FROM COFFEES");

The ResultSet object uprs might look something like this:

------------------      -----
Colombian		7.99
French_Roast		8.99
Espresso		9.99
Colombian_Decaf	  	8.99
French_Roast_Decaf	9.99

We can now use the new JDBC 2.0 methods in the ResultSet interface to insert a new row into uprs , delete an existing row from uprs , or modify a column value in uprs .

Previous | Next | Trail Map | JDBC Database Access | New Features in the JDBC 2.0 API