私はPostgre 9.5でHibernate 5.2を使用しています。 My DBスキーマにはいくつかの制約があります。エンドユーザに制約名を公開する可能性はありますか?私はユニーク制約SQLが制約に当たったときのHibernateからの意味的な例外
ALTER TABLE JobTable
ADD CONSTRAINT JobTableJobStatusEnum
CHECK (jobStatus IN ('JobSubmitted', 'JobRunning', 'JobFailed', 'JobKilled', 'JobSucceeded'));
を持っている想像し、私は ConstraintViolationException(「操作を実行できません。あなたのクエリがJobTableJobStatusEnumを壊す」)
うん、それはどんなをすることはありませんのような再投何かしたいですビジネスユーザーにとっての感覚ですが、他の開発者はこの問題を理解するでしょう。 DBから制約定義を取得して例外メッセージに入れることもできます。
ええと、私はそれを見ましたが、例外を解析してstacktraceを分析するのは面白いです。私はいくつかのライブラリ/拡張機能を探しています。 – Sergey
あなたは既にこの例外を持っています - すべての情報を含むMySQLIntegrityConstraintViolationException。制約に関するexception.getMessageの詳細を取得するだけです。 – xyz