使用jpa進行代碼更新:update的時候發現代碼出現了異常:could not extract ResultSet
在數據庫看數據並沒有更新,后發現更新操作需要加一個注解
注釋:當設置nativeQuery=true即可以使用原生SQL進行查詢
@Modifying注解
1、在@Query注解中編寫JPQL實現DELETE和UPDATE操作的時候必須加上@modifying注解,以通知Spring Data 這是一個DELETE或UPDATE操作。
2、UPDATE或者DELETE操作需要使用事務,此時需要 定義Service層,在Service層的方法上添加事務操作。
3、注意JPQL不支持INSERT操作。
@Transactional
@Modifying
@Query("UPDATE Person p SET p.email = :email WHERE p.id = :id")
void updatePersonEmail(@Param("id") Integer id, @Param("email") String email);
