【发布时间】:2016-04-12 04:24:03
【问题描述】:
我使用以下代码在我的数据库上运行查询。
@Repository
public interface PurchaseOrderRepository extends JpaRepository<PurchaseOrder, PurchaseOrderID> {
@Query(value ="update PURCHASE_ORDER set status='REJECTED' where id=?1", nativeQuery = true)
void RejectPO(Long id);
}
然后我只需在服务中调用此方法
@Service
public class SalesService {
@Autowired
PurchaseOrderRepository purchaseOrderRepository;
public void RejectPurchaseOrder(Long of) {
purchaseOrderRepository.RejectPO(of);
}
}
但我遇到了一个错误:
org.h2.jdbc.JdbcSQLException: Method is only allowed for a query. Use execute or executeUpdate instead of executeQuery; SQL statement:
update PURCHASE_ORDER set status='REJECTED' where id=? [90002-191]
问题是,我从未调用过executeQuery,我只是要求使用jpa 运行它。那么我该如何解决呢?
【问题讨论】: