Menyaring data
CityBook Libraries ingin pengguna mencari buku yang tersedia berdasarkan tahun terbit. Pengguna akan memasukkan sebuah tahun, dan sistem harus mengembalikan semua buku yang tersedia yang diterbitkan pada tahun tersebut atau setelahnya.
Anda akan menggunakan pendekatan yang aman dengan prepared statement. Kelas HikariSetup sudah dikonfigurasi untuk Anda.
Latihan ini adalah bagian dari kursus
Melakukan Query ke Basis Data PostgreSQL di Java
Petunjuk latihan
- Tulis klausa
WHEREuntuk mengambil buku dengan tahun terbit lebih besar dari atau sama dengan sebuah placeholder. - Saring berdasarkan
status, hanya mengizinkan buku'available'. - Tetapkan parameter tahun terbit untuk prepared statement.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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"));
}
}
}
}
}