запрос в Java EE с некоторыми базами данных - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь получить все фильмы, которые купил конкретный студент, но у меня проблемы с написанием запроса.

У меня есть эти ошибки:

STUDENT_MOVIEBOUGHT неизвестно

l.student_login не может быть преобразован в допустимый тип

l.moviebought_id не определен в предложении FORM.

Так что я не знаю, как написать запрос, не могли бы вы объяснить ошибки или намекнуть, как написать код (извините, новичок)?

Я пытался сделать:

public boolean checkBought(Movie movie, Student student){
    long mid=movie.getId();
    TypedQuery<Long> query=em.createQuery("SELECT l.moviebought_id FROM 
    STUDENT_MOVIEBOUGHT l WHERE l.student_login LIKE '%"+student+"%' AND 
    student_id LIKE '%"+mid"%",Long.class);

    List <Long> moviesId=query.getResultList();
    return moviesId.indexOf(mid)!=-1;
}

базы данных:

STUDENT_MOVIEBOUGHT     STUDENT   MOVIEBOUGHT    
  -student_login          -login     -id            
  -moviebought_id         -name      -movie_id
                                     -order_id

student.java

@Id
private String login;    
@OneToMany(cascade = CascadeType.ALL, mappedBy = "student")
private List<Order> order = new ArrayList();
private List<MovieBought> movies=new ArrayList();

moviebought.java

private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne
private Order order;
@ManyToOne
private Movies movies;

order.java

private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne
private Student student;
@OneToMany(cascade = CascadeType.ALL, orphanRemoval=true, mappedBy = 
"order")
private List<MovieBought> movies= new ArrayList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...