【发布时间】:2019-05-17 10:25:57
【问题描述】:
我需要根据提供的 id 在我的数据库中进行多次更新。现在我正在迭代 id 列表并一次又一次地调用我的存储库的更新函数。但这效率不高。我想知道是否有是一种我可以通过将 id 列表和另一个新字段值列表作为参数传递来在一次休息调用中进行批量更新的方法。在此先感谢您的帮助。
现在我一次又一次地调用这个方法来更新值。然而这根本没有效率:
@Transactional
@Modifying
@Query("UPDATE Student c SET c.rollNo= :rollNo WHERE c.id = :id")
void updateStudentRollNo(@Param("id") long id, @Param("rollNo") String rollNo);
【问题讨论】:
-
之类的?
@Query("UPDATE Student c SET c.rollNo= :rollNo WHERE c.id in :ids") void updateStudentRollNo(@Param("ids") List<Long> ids, @Param("rollNo") String rollNo); -
@AlanHay 卷号也在列表中
标签: sql spring spring-boot spring-data-jpa