Как уже сказал Гонсало, вам придется использовать executeUpdate ().
Это , потому что вы на самом деле МОДИФИЦИРУЕТЕ данные .
Вы используете getResultList () или getSingleResult (), только если хотите получить данные из базы данных.
маленький помощник: используйте executeUpdate () если ваш запрос имеет форму
UPDATE ... SET .. WHERE ..
or
DELETE ... WHERE ...
, используйте getResultList () или getSingleResult (), если запрос выглядит как
SELECT ... FROM xxx WHERE ...
or just
FROM xxx WHERE ...