у меня есть 3 таблицы user (id, name), course (id, name) и users_courses (user_id, course_id, grade)
, и я использовал этот запрос (который работает на phpmyadmin) в DbCourse.java
private final String GET_STUDENT_COURSES = "select * from users_courses where user_id = ? ";
и метод, который я хочу получить хэш-карту с названием курса и оценкой
public HashMap<String, Double> getHashMapStudentCourses(User user) {
HashMap<String, Double> studentCourses = new HashMap<>();
try {
ps = con.prepareStatement(GET_STUDENT_COURSES);
ps.setInt(1, user.getId());
rs = ps.executeQuery();
while(rs.next()){
String courseName =(this.get_course(rs.getInt("course_id"))).getCourse_name();
studentCourses.put(courseName,rs.getDouble("grade"));
}
} catch (SQLException ex) {
Logger.getLogger(DbCourse.class.getName()).log(Level.SEVERE, null, ex);
}
return studentCourses;
}
, это метод get_course
public Course get_course(int id) {
try {
ps = con.prepareStatement(GET_COURSE);
ps.setInt(1, id);
rs = ps.executeQuery();
if (rs.first()) {
return new Course(rs.getInt("id"), rs.getString("name"));
}
} catch (SQLException ex) {
Logger.getLogger(DbCourse.class.getName()).log(Level.SEVERE, null, ex);
}
return null;
}
и я получаю этоисключение, когда я использую его java.sql.SQLException: столбец 'оценка' не найден.Пожалуйста, помогите, я не знаю, где ошибка
Ребята, после того как я прокомментировал 2 строки внутри цикла while, я получил исключение stackoverflow, в чем причина