ऐसा लगता है कि mysql डुप्लिकेट प्राथमिक कुंजी के लिए 1062 त्रुटि कोड फेंक रहा है। आप अपने एसक्यूएल अपवाद के लिए त्रुटि कोड की जांच कर सकते हैं:
public static final int MYSQL_DUPLICATE_PK = 1062;
try{
//code that throws sql exception
} catch(SQLException e){
if(e.getErrorCode() == MYSQL_DUPLICATE_PK ){
//duplicate primary key
}
}
ध्यान दें कि यह दृष्टिकोण क्रॉस डेटाबेस विक्रेता नहीं है, क्योंकि अलग-अलग विक्रेताओं के पास डुप्लिकेट पीके के लिए अलग-अलग त्रुटि कोड हो सकते हैं।