Gérer les exceptions de base de données
Les opérations sur la base de données peuvent échouer pour plusieurs raisons : une table peut ne pas exister, un nom de colonne peut être mal orthographié, ou la connexion peut être interrompue. JDBC utilise SQLException pour capturer ces erreurs et fournit des détails comme le message d’erreur et le code d’état SQL.
La requête de cet exercice contient volontairement une faute de frappe (boks au lieu de books).
Cet exercice fait partie du cours
Interroger une base de données PostgreSQL en Java
Instructions
- Interceptez l’exception lorsque la requête échoue.
- Affichez le message d’erreur et le SQLState à partir de l’exception.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
public class Main {
public static void main(String[] args) {
try (Connection conn = DriverManager.getConnection(Credentials.URL, Credentials.USER, Credentials.PASSWORD);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM boks")) {
while (rs.next()) {
System.out.println(rs.getString("title"));
System.out.println(rs.getInt("publication_year"));
}
// Catch database exceptions
} catch (____ e) {
// Print the error message and SQLState
System.out.println("Error: " + e.____());
System.out.println("SQLState: " + e.____());
}
}
}