JPA-выражение данных Spring с использованием deleteBy - PullRequest
0 голосов
/ 26 апреля 2020

Я использую spring-data-jpa для выполнения операции удаления.

В настоящее время у меня есть такой запрос:

@Modifying
@Transactional
@Query("Delete from student s where(:studentName is null Or s.studentName =:studentName) and s.studentId IN(:studentIds)")
int deleteByStudentIdAndRollNo(@Param("studentName") String studentName, @Param("studentIds") List<Integer> studentIds)

Приведенный выше запрос работает нормально и возвращает количество успешно удаленных строк из таблицы. Но проблема в том, что теперь я должен вернуть удаленное List<Students> вместо количества удаленных записей.

Я знаю, что @Query всегда будет возвращать количество успешно удаленных записей.

Я пытался использовать deleteBy , как показано ниже:

List<Student> deleteByStudentIdStudentNameIsNullOrStudentNameIsAndStudentIdIN, Но это не работает. Есть ли способ получить список удаленных студентов?

1 Ответ

1 голос
/ 26 апреля 2020

В этой статье показано, как вернуть удаленные записи: Spring Data JPA - производные методы удаления

И попробуйте, возможно, этот код:

List<Student> deleteAllByStudentNameIsNullOrStudentNameAndStudentIdIn(String studentName, List<Integer> studentIds);

Но не могу будь уверен, что это будет работать, потому что я не знаю структуру модели твоего ученика.

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