Daten filtern
CityBook Libraries möchte, dass Nutzer nach verfügbaren Büchern nach Veröffentlichungsjahr suchen. Nutzer geben ein Jahr ein, und das System soll alle verfügbaren Bücher zurückgeben, die in diesem Jahr oder später veröffentlicht wurden.
Du verwendest dafür eine sichere Methode mit Prepared Statements. Die Klasse HikariSetup ist bereits für dich konfiguriert.
Diese Übung ist Teil des Kurses
Abfragen einer PostgreSQL-Datenbank in Java
Anleitung zur Übung
- Schreibe die
WHERE-Klausel, um Bücher mit Veröffentlichungsjahr größer oder gleich einem Platzhalter abzufragen. - Filtere nach
statusund erlaube nur'available'Bücher. - Setze den Parameter für das Veröffentlichungsjahr im Prepared Statement.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
public class Main {
public static void main(String[] args) throws SQLException {
HikariDataSource ds = HikariSetup.createDataSource();
// Complete the query to filter the data based on the requirements.
String query = "SELECT * FROM books ____ publication_year >= ____ AND status = '____'";
try (Connection conn = ds.getConnection();
PreparedStatement pstmt = conn.prepareStatement(query)) {
// Set the publication year parameter
____.____(1, 2000);
try (ResultSet rs = pstmt.executeQuery()) {
while (rs.next()) {
System.out.printf("ID: %d, Title: %s (%d)%n", rs.getInt("book_id"), rs.getString("title"), rs.getInt("publication_year"));
}
}
}
}
}