Interroger une base de données PostgreSQL en Java
Miller Trujillo
Staff Software Engineer
$$
$$
$$
$$
WHERE, ORDER BY, LIMIT, OFFSET ✨
String sql = "SELECT * FROM books WHERE publication_year > ?"; PreparedStatement pstmt = conn.prepareStatement(sql);pstmt.setInt(1, 2000); ResultSet rs = pstmt.executeQuery();
? et lier avec setInt()
String sql = "SELECT title, publication_year FROM books
WHERE category_id = ? ORDER BY publication_year DESC";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 3);
ResultSet rs = pstmt.executeQuery();
// Ajout de comportement dynamique boolean desc = true; String sql = "SELECT title, publication_year FROM books WHERE category_id = ? ORDER BY publication_year ";sql += desc ? "DESC" : "ASC";
+= ajoute du texte à la chaîne SQL?: - opérateur ternaire (if-else compact)LIMIT contrôle le nombre de lignes à retournerOFFSET ignore les lignes avant de retourner les résultatsORDER BY assure des résultats cohérents sur les pagesString sql = "SELECT title FROM books ORDER BY title ASC LIMIT ? OFFSET ?"; PreparedStatement pstmt = conn.prepareStatement(sql);pstmt.setInt(1, 10); // LIMIT : 10 livres par page pstmt.setInt(2, 20); // OFFSET : ignorer les 20 premières lignes ResultSet rs = pstmt.executeQuery();
Interroger une base de données PostgreSQL en Java