kma*_*oor 5 java exception jdbc unique-constraint
对于许多不同的约束,我的代码可能会遇到“约束违反异常”(CVE)。为了向用户显示有意义的消息并采取特定操作,我正在String解析getMessage(). 它可以工作,但很丑陋,而且肯定不容易维护。
我想知道是否有更好的方法?这一定是一个很常见的场景;有我可以遵循的模式或最佳实践吗?
谢谢。
小智 2
AFAIK,因为您对特定约束失败感兴趣,所以无论您做什么都是唯一的出路。
我不确定你在谈论哪个数据库,但你可以尝试..SQLException.getErrorCode()和SQLException.getSQLState(). 这些将为您提供更多信息,具体取决于数据库供应商。
例如,在 Oracle 中, SQLException.getErrorCode()只会告诉您违反了某个约束,而不一定是哪个约束。