import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; // javac HelloJDBC.java // java -classpath /home/marnitz/ojdbc14.jar:/.../ HelloJDBC // jdbc:oracle:thin:@deanston.cs.uni-magdeburg.de:1521:tix public class ueb04_HelloJDBC { private static String query = null; // Anfragestring private static Connection connection = null; //Verbindung zur Datenbank public static void main(String[] args) { initDBConnection(); } /** * Oeffnen einer Datenbankverbindung */ private static void initDBConnection(){ String url ="jdbc:oracle:thin:@deanston.cs.uni-magdeburg.de:1521:tix"; //URL zur Datenbank String username = "username"; //Nutzername String password = "password"; //Passwort // Holen des Oracle-Treibers try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch(ClassNotFoundException e1) { e1.printStackTrace(); System.exit(1); } //Erstellung einer Verbindung zur Datenbank try { connection = DriverManager.getConnection(url, username, password); //Ausfuehren einer DB-Anfrage executeQuery(); //Schliessen der DB-Verbindung connection.close(); }catch (SQLException e) { e.printStackTrace(); } } /** * Ausfuehrung der DB-Anfrage */ private static void executeQuery(){ try { /** * Hier wird die DB-Anfrage gesetzt!!!! */ query = "select * from Bierladen1"; //Erzeugung eines Statements Statement statement = connection.createStatement(); //Holen Ergebnismenge der Anfrage ResultSet resultSet = statement.executeQuery(query); //Ausgabe des Anfrageergebnisses showResult(resultSet); //Schliessen des ResultSets resultSet.close(); } catch (SQLException e) { e.printStackTrace(); } } /** * Ausgabe der Ergebnismenge */ private static void showResult(ResultSet resultSet){ try { //Holen der Metadaten der Datenbank ResultSetMetaData metaData = resultSet.getMetaData(); //Anzahl der Tabellenspalten int number = metaData.getColumnCount(); System.out.println(); //Ausgabe der Spaltennamen for (int i=1;i<=number;i++){ //Name der Tabellenspalte String name = metaData.getColumnName(i); System.out.print(name + " "); } System.out.println(); System.out.println("--------------------------------\n"); //Zeilenweise Ausgabe der Tabellenwerte while(resultSet.next()){ for(int i=1;i<=number;i++) System.out.print(resultSet.getString(i)+ " "); System.out.println(); } } catch (SQLException e) { e.printStackTrace(); } } }