2013-08-18 278 views
1

我正在使用JDBC連接到我的Java項目中的MySQL。 我已經在mySQL表中實現了一些檢查約束。顯示SQL錯誤消息

我有一個表單,用戶在其中輸入一些值並將其提交給MySQL表。 如果違反約束,Java會提供SQLException。

目的是顯示彈出式消息作爲條件是在我的桌子侵犯。

如何在java中檢索此信息?

我試過一個記錄器,但它只在控制檯中顯示冗長的錯誤消息。

回答

3

您可以檢查出this: -

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(); 
       } 
      } 
     } 
    } 
} 
+0

很好的回答。 非常感謝你的代碼也。 但ignoreSQLException不起作用。我避免了 – user2670866

+0

不客氣! –