2
je créer méthode personnalisée dans le référentiel Spring@Query au printemps Repository pas mettre à jour les lignes et ne pas obtenir erreur
@Transactional
@Modifying(clearAutomatically = true)
@Query("UPDATE Order co SET co.orderStatus =:status WHERE co.orderStatus =:newStatus")
int updateOrderStatus(@Param("status") OrderStatus status, @Param("newStatus") OrderStatus newStatus);
et l'appeler en service:
log.info("started");
int i = orderRepository.updateOrderStatus(OrderStatus.CREATED, OrderStatus.PENDING);
log.info("updates: " + i);
Et je vois dans les journaux:
INF 15: 43: 45.102 a commencé
INF 15: 43: 46.035 mises à jour: 0
En DB, j'ai 3 lignes avec l'état CREATED
. Je n'ai pas commis d'erreur et les lignes ne sont pas mises à jour.
@Column(name = "order_status")
@Enumerated(EnumType.STRING)
private OrderStatus orderStatus;
findAllByOrderStatus(OrderStatus.CREATED) get 3 rows
une erreur idiote (((((((((((((((((((Merci – user5620472
vous êtes bienvenue, ça arrive;) –