Dieses Beispiel zeigt, wie Sie einen Inner-Join-Vorgang durchführen. In diesem Szenario hat jeder Mitarbeiter entsprechende Abteilungsinformationen. Der Join-Vorgang verknüpft Daten aus der Employee-Tabelle mit entsprechenden Daten aus der Department-Tabelle. Die Verknüpfung wird mit der Abteilungsnummer in der Employee-Tabelle hergestellt, um zugehörige Informationen in der Department-Tabelle zu finden.
package ianywhere.ultralitej.demo; import ianywhere.ultralitej.*; /** * ReadInnerJoin -- sample program to demonstrate reading the Employee table * and joining to each row the corresponding Department row. */ public class ReadInnerJoin { /** * mainline for program. * * @param args command-line arguments * */ public static void main ( String[] args ) { try { Configuration config = DatabaseManager.createConfigurationFile( "Demo1.ulj" ); Connection conn = DatabaseManager.connect( config ); PreparedStatement stmt = conn.prepareStatement( "SELECT E.number, E.last_name, E.first_name, E.age," + " E.dept_no, D.name" + " FROM Employee E" + " JOIN Department D ON E.dept_no = D.dept_no" + " ORDER BY E.number" ); ResultSet cursor = stmt.executeQuery(); for( ; cursor.next(); ) { /* Can't access columns by name because no meta data */ int emp_no = cursor.getInt( 1 /* "E.number" */ ); String last_name = cursor.getString( 2 /* "E.last_name" */ ); String first_name = cursor.getString( 3 /* "E.first_name" */ ); int age = cursor.getInt( 4 /* "E.age" */ ); int dept_no = cursor.getInt( 5 /* "E.dept_no" */ ); String dept_name = cursor.getString( 6 /* "D.name" */ ); System.out.println( first_name + ' ' + last_name ); System.out.print( " empl. no = " ); System.out.print( emp_no ); System.out.print( " dept = " ); System.out.println( dept_no ); System.out.print( " age = " ); System.out.print( age ); System.out.println( ", " + dept_name ); } cursor.close(); stmt.close(); conn.release(); Demo.display( "ReadInnerJoin completed successfully" ); } catch( ULjException exc ) { Demo.displayException( exc ); } } } |
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |