// This code example is from the following source: // // Book Title: Programming with Objects, A Comparative Presentation // of Object-Oriented Programming with C++ and Java // // Chapter: Chapter 20 Database Programming // // Section: Section 20.4 JDBC Programming: Invoking SQL Through Java // // The links to the rest of the code in this book are at // // http://programming-with-objects.com/pwocode.html // // For further information regarding the book, please visit // // http://programming-with-objects.com // //DBFriends2.java import java.sql.*; class DBFriends2 { public static void main( String[] args ) { try { Class.forName( "org.gjt.mm.mysql.Driver").newInstance(); String url = "jdbc:mysql:///test"; Connection con = DriverManager.getConnection( url ); Statement stmt = con.createStatement(); stmt.executeQuery( "SET AUTOCOMMIT=1" ); stmt.executeQuery( "DROP TABLE IF EXISTS Friends" ); stmt.executeQuery( "DROP TABLE IF EXISTS SportsClub" ); stmt.executeQuery( "CREATE TABLE Friends ( Name CHAR (30) PRIMARY KEY, " + "Phone CHAR (15), Email CHAR(30), " + "Age TINYINT (3), Married BOOL, " + "NumKids TINYINT (3), Sport CHAR(20) )" ); stmt.executeQuery( "CREATE TABLE SportsClub ( Name CHAR (30) PRIMARY KEY, " + "Age TINYINT (3), Sport CHAR(20), " + "Level Char(20) )" ); stmt.executeQuery( "LOAD DATA LOCAL INFILE 'Friends.txt' INTO TABLE " + " Friends" ); stmt.executeQuery( "LOAD DATA LOCAL INFILE 'SportsClub.txt' INTO " + " TABLE SportsClub" ); // which of the Friends also play tennis at the club: ResultSet rs = stmt.executeQuery( "SELECT Friends.Name, SportsClub.Level FROM Friends, " + "SportsClub WHERE " + "Friends.Name = SportsClub.Name AND " + "Friends.Sport = SportsClub.Sport AND " + "Friends.Sport = 'tennis' " ); ResultSetMetaData rsmd = rs.getMetaData(); int numCols = rsmd.getColumnCount(); while ( rs.next() ) { for ( int i = 1; i <= numCols; i++ ) { if ( i > 1 ) System.out.print( " plays tennis at level " ); System.out.print( rs.getString( i ) ); } System.out.println( "" ); } rs.close(); con.close(); } catch(Exception ex ) { System.out.println(ex); } } }