Java Reference
In-Depth Information
Statement stmt = conn.createStatement();
// Datenabfrage aufbereiten
String query = "select ID, Titel from Buecher";
// Schritt 3: Datenabfrage ausführen
ResultSet rs = stmt.executeQuery(query);
// Schritt 4: Ergebnismenge verarbeiten
System.out.println("ID\t\tTitel");
System.out.println("------------------------------------------");
while (rs.next()) {
System.out.println(rs.getString("ID") + "\t" + rs.getString("Titel"));
}
// Verbindung schließen
rs.close();
stmt.close();
Listing 15.15 Datenbankabfrage mit Ausgabe in der Konsole
Mit dem Statement stmt=con.createStatement(); wird ein Statement-Objekt erzeugt,
das zur Übermittlung einer SQL-Anweisung benötigt wird.
Der String query nimmt die SQL-Abfrage auf, in unserem Beispiel also die Select -Anwei-
sung zur Abfrage aller Bücher mit Nummer.
Mit ResultSet rs=stmt.executeQuery(query); wird der Query-String an das stmt -Objekt
zur Übermittlung und Ausführung übergeben. Die Abfrage liefert das Ergebnis in Form
eines ResultSet zurück. Das ResultSet rs können Sie sich wie eine Tabelle vorstellen, die
die Datensätze zeilenweise enthält. Diese »Tabelle« wird nun mit Hilfe einer kopfge-
steuerten Schleife abgearbeitet. In unserem Fall geben wir vor Beginn der Schleife eine
Textzeile mit den Spaltenüberschriften und einer Trennlinie aus. Danach werden begin-
nend mit dem ersten Datensatz die Attribute mit rs.getString(«Attribut«) abgeholt
und ausgegeben. Mit rs.next() wird jeweils zum nächsten Datensatz gewechselt.
Sobald kein weiterer Datensatz mehr vorhanden ist, liefert der Aufruf rs.next() das
Ergebnis false zurück, womit die Schleife beendet wird.
Nach Beendigung der Schleife werden die Objekte rs , stmt und conn in umgekehrter Rei-
henfolge ihrer Erzeugung wieder geschlossen. Diese Aufräumarbeiten sind am Ende des
Programms nicht unbedingt erforderlich, da sie beim Programmende automatisch
erfolgen. Ist der Verbindungsaufbau mit der Abfrage in einem komplexen Programm
mehrfach notwendig, so können Sie durch das explizite Schließen der Objekte Ressour-
cen einsparen. Abbildung 15.4 zeigt, wie das Abfrageergebnis in der Konsole dargestellt
wird. Sollen SQL-Anweisungen verwendet werden, die Veränderungen am Datenbe-
stand vornehmen, wie z. B. das Einfügen oder Löschen von Datensätzen, verwenden Sie
Search WWH ::




Custom Search