Gestire le eccezioni del database
Le operazioni sul database possono fallire per vari motivi: una tabella potrebbe non esistere, il nome di una colonna potrebbe essere scritto male oppure la connessione potrebbe interrompersi. JDBC usa SQLException per intercettare questi errori, fornendo dettagli come messaggi di errore e codici di stato SQL.
La query in questo esercizio contiene un errore voluto (boks invece di books).
Questo esercizio fa parte del corso
Eseguire query su un database PostgreSQL in Java
Istruzioni dell'esercizio
- Intercetta l'eccezione quando la query fallisce.
- Stampa il messaggio di errore e lo SQLState dall'eccezione.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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.____());
}
}
}