2016-05-26 11 views
0

IDに基づいて行を削除しようとしていますが、NullPointerExceptionが発生し続けます。javaを使用してMySQLデータベースの行を削除する

マイコード:

public void removePatientsFromDatabase(int id) { 
    String removeSql = "DELETE FROM patienten WHERE idPatient id = idn"; 
    try (Connection con = sql2o.open()) { 
     con.createQuery(removeSql) 
       .addParameter("idn", id) 
       .executeUpdate(); 
    } 
} 

エラー:

enter image description here

データベース:

enter image description here

+1

Query.javaの133行目に移動し、メソッドまたはフィールドにアクセスしようとしているオブジェクトの値を確認してください。 – ManoDestra

+0

NullPointerExceptionが何であるかは知っていますが、Query.javaにはどのように行くのですか? – Skupaj

+0

クラスのいずれかに当たるまでスタックトレースを追跡します。上記のパッケージ名をよく見ていませんでした。あなたはどちらがあなたのものであるかを知るべきです。おそらく、GUI.javaは333行目ですか?それ以上のものは? 56行目のDataLayer.java?そして、あなたは上記の例外を捕まえていません。 SQLにはエラーがあります。 – ManoDestra

答えて

2

あなたのパラメータの前に追加する必要があります。試してください:

DELETE FROM patienten WHERE idPatient= :idn 
+0

うん、それはthats!ありがとう – Skupaj

1

あなたは、クエリ内の冗長のid VARを持っています。お試しください:

DELETE FROM patienten WHERE idPatient= :idn 
+0

私はNullPointerExceptionを取得し続ける – Skupaj

関連する問題