CommencerCommencer gratuitement

Filtrer les données

CityBook Libraries souhaite que les utilisateurs puissent rechercher les livres disponibles par année de publication. Les utilisateurs saisiront une année, et le système devra renvoyer tous les livres disponibles publiés cette année-là ou après.

Vous utiliserez une approche sécurisée avec des prepared statements. La classe HikariSetup est déjà configurée pour vous.

Cet exercice fait partie du cours

Interroger une base de données PostgreSQL en Java

Afficher le cours

Instructions

  • Écrivez la clause WHERE pour interroger les livres dont l’année de publication est supérieure ou égale à un espace réservé.
  • Filtrez selon status, en ne permettant que les livres 'available'.
  • Définissez le paramètre d’année de publication pour le prepared statement.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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"));
                }
            }
        }
    }
}
Modifier et exécuter le code