Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java @Spring存储库中的查询未更新行和未获取错误_Java_Spring_Entity_Spring Repositories - Fatal编程技术网

Java @Spring存储库中的查询未更新行和未获取错误

Java @Spring存储库中的查询未更新行和未获取错误,java,spring,entity,spring-repositories,Java,Spring,Entity,Spring Repositories,我在Spring存储库中创建自定义方法 @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

我在Spring存储库中创建自定义方法

@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);
并在服务中调用它:

log.info("started");
int i = orderRepository.updateOrderStatus(OrderStatus.CREATED, OrderStatus.PENDING);
log.info("updates: " + i);
我在日志中看到:

INF 15:43:45.102已启动
INF 15:43:46.035更新:0

在DB中,我有3行具有
已创建
状态。我没有出错,也没有更新行

@Column(name = "order_status")
@Enumerated(EnumType.STRING)
private OrderStatus orderStatus;

findAllByOrderStatus(OrderStatus.CREATED) get 3 rows

您的查询与此相反:

    @Transactional
    @Modifying(clearAutomatically = true)
    @Query("UPDATE Order co SET co.orderStatus =:newStatus WHERE co.orderStatus =:status")
    int updateOrderStatus(@Param("status") OrderStatus status, @Param("newStatus") OrderStatus newStatus);