我想在我的Java程序中抛出PSQLException。
throw new PSQLException("serializable error", new PSQLState("40001"));
但是,Eclipse不允许编译我的Java程序,并出现错误:
无法实例化PSQLState类型
我在程序中使用Postgres SQL数据库。我在项目中有postgresql-42.2.5.jar库。我导入了这两个类,没有帮助。
import org.postgresql.util.PSQLException;
import org.postgresql.util.PSQLState;
答案 0 :(得分:0)
类org.postgresql.util.PSQLState
是一个枚举,因此您只能使用该枚举中定义的值。您无法创建新值。但是,您的代码根本不需要实例化PSQLException
,该异常是使用PostgreSQL JDBC驱动程序,而不是用户代码。
如果您完全需要抛出SQLException
(我认为通常不需要用户代码),则应使用java.sql.SQLException
(或包{{中的子类之一) 1}}),或定义自己的子类,例如new SQLException(String reason, String SQLState)
。