Показать сообщение об ошибке SQL

Я использую JDBC для подключения к MySQL в своем java-проекте. Я реализовал некоторые ограничения проверки в таблице mySQL.

У меня есть форма, в которой пользователь вводит некоторые значения и отправляет их в таблицу MySQL. Если ограничение нарушается, Java выдает исключение SQLException.

Моей целью является отображение всплывающего сообщения о том, какое условие было нарушено в моей таблице.

Как мне получить эту информацию в java?

Я попробовал регистратор, но он показывает только длинное сообщение об ошибке в консоли.


person user2670866    schedule 18.08.2013    source источник


Ответы (1)


Вы можете проверить это:

public static void printSQLException(SQLException ex) {

    for (Throwable e : ex) {
        if (e instanceof SQLException) {
            if (ignoreSQLException(
                ((SQLException)e).
                getSQLState()) == false) {

                e.printStackTrace(System.err);
                System.err.println("SQLState: " +
                    ((SQLException)e).getSQLState());

                System.err.println("Error Code: " +
                    ((SQLException)e).getErrorCode());

                System.err.println("Message: " + e.getMessage());

                Throwable t = ex.getCause();
                while(t != null) {
                    System.out.println("Cause: " + t);
                    t = t.getCause();
                }
            }
        }
    }
}
person Rahul Tripathi    schedule 18.08.2013
comment
Хороший ответ. Также большое спасибо за код. Однако ignoreSQLException не работает. я этого избегал - person user2670866; 18.08.2013