แสดงข้อความแสดงข้อผิดพลาด 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
คำตอบที่ดี. ขอบคุณมากสำหรับโค้ดเช่นกัน อย่างไรก็ตาม IgnSQLException ไม่ทำงาน ฉันหลีกเลี่ยงสิ่งนั้น - person user2670866; 18.08.2013