W rzeczywistości wykonujesz instrukcję delete dwukrotnie, ponieważ wywołujesz .execute()
dwa razy. W większości sytuacji prawdopodobnie nie będziesz mieć danych, które można usunąć za pomocą instrukcji, jeśli uruchomisz ją prawie natychmiast po raz drugi.
Zamiast tego użyj executeUpdate()
metoda
co zwraca ci liczbę zmodyfikowanych wierszy:
int rowsAffected = createPlayer.executeUpdate();
if(rowsAffected > 0) {
JOptionPane.showMessageDialog(null, "Player successfully deleted!");
}
else{
JOptionPane.showMessageDialog(null, "Player does not exist!", "notdeleted", JOptionPane.ERROR_MESSAGE);
}