Gérer les exceptions de base de données
Les opérations sur la base de données peuvent échouer pour diverses raisons : une table peut ne pas exister, un nom de colonne peut être mal orthographié ou la connexion peut se couper. JDBC utilise SQLException pour intercepter ces erreurs et fournir des détails comme les messages d'erreur et les codes d'état SQL.
La requête dans cet exercice contient volontairement une faute de frappe (boks au lieu de books).
Cette activité fait partie du cours
Interroger une base de données PostgreSQL en Java
Instructions de l’exercice
- Interceptez l'exception lorsque la requête échoue.
- Affichez le message d'erreur et le code SQLState à partir de l'exception.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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.____());
}
}
}