我的 Java 应用程序正在与 Apache Derby 10.8.1.2 DB 通信。我捕获了 SQL 异常并想测试一个特定的情况:LANG_DUPLICATE_KEY_CONSTRAINT
我找不到正确的 .jar 来导入org.apache.derby.shared.common.reference
据说包含这个常量的文件。
甚至 Derby Developer's Guide 也建议进行如下测试:
if ( SQLState.equals( "23505" ) )
问题是,为什么要测试静态字符串而不是常量?我希望是这样的:
if ( SQLState.equals( SQLState.LANG_DUPLICATE_KEY_CONSTRAINT ) )