Aby przechwycić konkretny wyjątek SQLException, musisz porównać go ze stanem SQL za pomocą getSQLState()
metoda. Np.:stan SQL 23 dla naruszenia integralności danych.
catch (SQLException ex) {
if (ex.getSQLState().startsWith("23")) {
JOptionPane.showMessageDialog(null, "Duplicate");
}
}