JdbcRowSet Query Statement with Parameters

This section describes how to define parameters in the query statement of a JdbcRowSet object.

When you call the setCommand() method to provide the SELECT query statement, you can define some parameters in the same way as a PreparedStatement. Here is a sample program showing you set parameters and provide parameter values:

/* MySqlRowSetParameter.java
 * Copyright (c) HerongYang.com. All Rights Reserved.
 */
import java.sql.*;
import javax.sql.rowset.RowSetProvider;
import javax.sql.rowset.JdbcRowSet;
public class MySqlRowSetParameter {
  public static void main(String [] args) {
    try {

// RowSetFactory should be used now
//      JdbcRowSet jrs
//        = new com.sun.rowset.JdbcRowSetImpl();
      JdbcRowSet jrs
        = RowSetProvider.newFactory().createJdbcRowSet();

// Set the connection URL for the DriverManager
      jrs.setUrl("jdbc:mysql://localhost/HerongDB"
        +"?user=Herong&password=TopSecret");

// Set a SQL statement with a parameter
      jrs.setCommand("SELECT * FROM Profile WHERE ID = ?");

// Set parameter values
      jrs.setInt(1, 30028);

// Connect and run the statement
      jrs.execute();
      jrs.next();
      System.out.println("User #30028: "
        +jrs.getString("FirstName")+" "+jrs.getString("LastName"));

// Repeating for another parameter value
      jrs.setInt(1, 30027);
      jrs.execute();
      jrs.next();
      System.out.println("User #30027: "
        +jrs.getString("FirstName")+" "+jrs.getString("LastName"));

// Close resource
      jrs.close();
    } catch (Exception e) {
      System.err.println("Exception: "+e.getMessage());
    }
  }
}

The parameter in this program represents the ID value in the Profile table. You may need to change the parameter values if your Profile table has different ID values. Here is the output of the program:

User #30028: 2438 bed51
User #30027: f5a 2c5c6

Table of Contents

 About This Book

 JDBC (Java Database Connectivity) Introduction

 JDK (Java SE) Installation

 MySQL Installation on Windows

 MySQL JDBC Driver (MySQL Connector/J)

 MySQL - PreparedStatement

MySQL - Reference Implementation of JdbcRowSet

 Overview of RowSet Objects

 Connecting JdbcRowSet to Database Servers

 Sun Implementation of JdbcRowSet API

 Connecting JdbcRowSet with a Connection URL

 Connecting JdbcRowSet with a Predefined Connection Object

 Connecting JdbcRowSet with a Predefined ResultSet Object

 Connecting JdbcRowSet with JNDI Directory Service

JdbcRowSet Query Statement with Parameters

 Inserting Rows with JdbcRowSet Objects

 MySQL - JBDC CallableStatement

 MySQL CLOB (Character Large Object) - TEXT

 MySQL BLOB (Binary Large Object) - BLOB

 Using Connection Pool with JDBC

 Archived Tutorials

 References

 Full Version in PDF/EPUB