Postgres JDBC: PSQLException 的特定错误代码?

Postgres JDBC: Especific error code of PSQLException?

在编写使用 Oracle 数据库的 java 代码时,总是可以捕获 SQLException 并使用 e.getErrorCode() 读取特定的 Oracle 错误。例如error 28001表示密码过期,28000表示账号被封,1017表示错误user/passsword等

这样我就可以以适当的方式管理不同的错误。

但是对于 PostgreSQL 数据库 e.getErrorCode() 总是 returns 0,即使在捕获特定于 Postgres 的 PSQLException.

时也是如此

问题

您是否尝试查看 getSqlState() instead? See also: http://www.postgresql.org/docs/9.3/static/errcodes-appendix.html