Предложение IN внутри запроса на обновление с использованием JPQL - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь выполнить этот запрос:

    @Modifying
@Transactional
@Query(value = "UPDATE SpreadsheetRegisters r SET r.buApprobation =1 WHERE r.idRegister IN (:list)")
public void updateExpiredRegistries(@Param("list") List<BigDecimal> expiredRegistriesIds);

По сути, я пытаюсь обновить сущность, если ее идентификатор находится внутри этого списка.

Это исключение, которое яполучаю:

o.h.engine.jdbc.spi.SqlExceptionHelper   : ORA-00936: missing expression

org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not execute statement

Кажется, мой запрос неверный, но я не знаю, где ... Кто-нибудь может мне помочь?спасибо

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Спасибо, ребята, за вашу поддержку.Через несколько часов я обнаружил ошибку.Запрос был верным, но моего списка нет, она была пуста, и из-за этого база данных не могла выполнять свою работу.

JPA: 1 Me: 0

0 голосов
/ 26 сентября 2018

Ваш класс сущности должен называться SpreadsheetRegisters, так как вы используете аннотацию запроса.Тем не менее, вы можете установить для собственного свойства @Query значение true, если хотите использовать имя таблицы базы данных, а не имя класса сущности

Можно оставить квадратные скобки, оставить их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...