JDBCQuerypublic class JDBCQuery extends Object A trivial example of a database query performed with JDBC. The database
being queried only exists locally on Windows'95; it the MS Access
"Video Database" sample database. Note that you must select this as
"System DSN" under the name "Video.Collection" (On '95 you
do this from Settings->Control Panel->32Bit ODBC->System DSN)
for this particular configuration of the demo to work.
Other than this (see the URL below), the demo would work on
any platform (UNIX, MS, Mac, Novell, etc.).
We simply get a JDBC connection to the local Database server via ODBC,
create a Statement from that, and a ResultSet with its Query set
to a selection of three items from a database table, and print the
results in a while loop as they come in from the database. |
Methods Summary |
---|
private static void | checkForWarning(java.sql.SQLWarning warn)
// If a SQLWarning object was given, display the
// warning messages. Note that there could be
// multiple warnings chained together
if (warn != null) {
System.out.println("*** Warning ***\n");
while (warn != null) {
System.out.println("SQLState: " +
warn.getSQLState());
System.out.println("Message: " +
warn.getMessage());
System.out.println("Vendor: " +
warn.getErrorCode());
System.out.println("");
warn = warn.getNextWarning();
}
}
| public static void | main(java.lang.String[] av)
try {
System.out.println("Loading Driver (with Class.forName)");
// Load the jdbc-odbc bridge driver
Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
// Enable logging
// DriverManager.setLogStream(System.err);
System.out.println("Getting Connection");
Connection conn = DriverManager.getConnection (
"jdbc:odbc:Companies",
"ian", ""); // user, passwd
// Any warnings generated by the connect?
checkForWarning(conn.getWarnings());
System.out.println("Creating Statement");
Statement stmt = conn.createStatement();
System.out.println("Executing Query");
ResultSet rs = stmt.executeQuery("SELECT * FROM Companies");
System.out.println("Retrieving Results");
int i = 0;
while (rs.next()) {
System.out.println("Retrieving Company ID");
int x = rs.getInt("CustNO");
System.out.println("Retrieving Name");
String s = rs.getString("Company");
System.out.println("ROW " + ++i + ": " +
x + "; " + s + "; " + ".");
}
rs.close(); // All done with that resultset
stmt.close(); // All done with that statement
conn.close(); // All done with that DB connection
} catch (ClassNotFoundException e) {
System.out.println("Can't load driver " + e);
} catch (SQLException e) {
System.out.println("Database access failed " + e);
}
|
|