Обработка исключений базы данных
Операции с базой данных могут завершаться ошибкой по разным причинам: таблица может не существовать, имя столбца может быть написано с опечаткой или соединение может прерваться. JDBC использует SQLException для перехвата таких ошибок и предоставляет подробности: сообщение об ошибке и код состояния SQL.
В запросе этого упражнения намеренно допущена опечатка (boks вместо books).
Это упражнение является частью курса
Работа с базой данных PostgreSQL на Java
Инструкции к упражнению
- Перехватите исключение, которое возникает при неудачном выполнении запроса.
- Выведите сообщение об ошибке и значение SQLState из перехваченного исключения.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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.____());
}
}
}