У меня есть два класса ClassA и ClassB. Многие ClassB могут иметь связь с одним ClassA, следовательно, отношение многие к одному от ClassB к ClassA Отношения это как:
ClassA {
@ManyToOne(optional = false)
@JoinColumn(name = "ClassB_ID", referencedColumnName = "ID", nullable = false)
private ClassB classB = new ClassB();
}
У меня такой запрос:
delete from ClassA as a
where a.classB in (select b from ClassB as b where b.attr1=?1 and b.attr2=?2)
and a.attr3=?3
И я преобразовал этот запрос как:
delete from ClassA as a join a.classb as b where b.attr1=?1 and b.attr2=?2
and a.attr3=?3"
Когда я запускаю это, я получаю исключение:
ERROR PARSER - line 1:28: unexpected token: join
org.springframework.dao.InvalidDataAccessApiUsageException:
узел для перемещения не может быть нулевым !;
вложенное исключение
java.lang.IllegalArgumentException:
узел для перемещения не может быть нулевым!
Кто-нибудь может помочь?
Спасибо.