Hi,
Ich habe gesehen, dass es in JAVA auch preparedStatments gibt, ich kannte die bisher nur in PHP.
Es kommt zu folgender Aktion.
Ich trage über eine Methode werte ein, diese leitet die ersten werte direkt an die Nächste etc.
Bei der letzten Methode, dann möchte ich auf die get Methode zugreifen, welche mir genau den Datensatz ausgeben soll, welchen ich eben eingetragen habe.
Das Problem ist ich bekomme eine NULL Pointer Exception.
Ich verstehe nicht woran es liegt da die Werte angekommen sind.
Ich habe gesehen, dass es in JAVA auch preparedStatments gibt, ich kannte die bisher nur in PHP.
Es kommt zu folgender Aktion.
Ich trage über eine Methode werte ein, diese leitet die ersten werte direkt an die Nächste etc.
Bei der letzten Methode, dann möchte ich auf die get Methode zugreifen, welche mir genau den Datensatz ausgeben soll, welchen ich eben eingetragen habe.
Java:
void getStudent(int mat_nr,int semester_nr,int kurs_nr,double Zensur) throws Exception{
ResultSet rs = null;
System.out.println(mat_nr); // hier wird das richtige ausgegeben
System.out.println(semester_nr); // hier wird das richtige ausgegeben
System.out.println(kurs_nr); // hier wird das richtige ausgegeben
System.out.println(Zensur); // hier wird das richtige ausgegeben
String SQL = "SELECT CONCAT(student.MatNr,' ',student.Name) AS student,"+
" semester.Semester,kurs.Bezeichnung AS Fach,note.note FROM student"+
" LEFT JOIN student_semester ON student.MatNr=student_semester.student_id"+
" LEFT JOIN semester ON student_semester.semester_id = semester.semester_id"+
" LEFT JOIN student_info ON student_semester.student_id = student_info.student_id"+
" LEFT JOIN note ON student_info.student_id = note.student_id"+
" LEFT JOIN kurs ON note.kurs_id = kurs.kurs_id"+
" WHERE note.student_id=? AND note.kurs_id=?"+
" AND note.semester_id =? AND note.note=?";
pstmt = con.prepareStatement(SQL);
pstmt.setInt(1, mat_nr);
pstmt.setInt(2, kurs_nr);
pstmt.setInt(3, semester_nr);
pstmt.setDouble(4, Zensur);
pstmt.execute();
rs.next();
System.out.println(rs.getInt(1)+" "+rs.getInt(2)+" "+rs.getInt(3)+" "+rs.getDouble(4));
}
Ich verstehe nicht woran es liegt da die Werte angekommen sind.
Zuletzt bearbeitet: