连接到Postgres DB失败时获取错误代码

时间:2018-03-19 04:08:10

标签: java postgresql exception

我想在PostGres DB出现任何问题时记录错误代码,例如:42703表示错误的列名,08006表示连接失败。我试过了getSQLState(),它与前一种情况有关,但不适用于后者。即使我在将其转换为SQLException并调用getSQLState()之前检查了Exception的实例,我仍然会得到null值。

我尝试过的两个场景是在任务管理器中停止Postgres服务并使用错误的用户名连接到数据库。我的方法有什么问题吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

连接失败通常由数据库驱动程序捕获和处理,因此在应用程序捕获它们之前会消耗这些异常。通常,为了测试数据库是否可用,我使用select查询并测试非空结果,例如SELECT 1;