我正在使用Spring Data JPA存储库服务,我编写了一个自定义查询,将数据插入表中。
我的表结构: -
desc Person;
+------------------------+--------------+------+-----+---------+--------------+
| Field | Type | Null | Key | Default | Extra |
+------------------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| status | varchar(20) | YES | | NULL | |
| message | varchar(50) | YES | | NULL | |
| contents | LONGTEXT | YES | | NULL | |
+------------------------+--------------+------+-----+---------+----------------+
我的查询是这样的:
UPDATE Person ps
set ps.status ='FAILED',
ps.message='ok'
where ps.id = 6;
我甚至没有尝试更新名为"内容"的列。但是我仍然在为列"内容"柱。我在这里做错了什么?
我检查了max_allowed数据包大小(1GB)和列数据类型(longtext)。
修改: 我的代码是这样的: -
public interface PersonRepository extends CrudRepository<Person, Integer> {
@Modifying(clearAutomatically = true)
@Transactional(readOnly=false)
@Query(UPDATE Person ps set ps.status =:STATUS,ps.message=:MESSAGE where ps.id =:ID)
int updatePersonForId(@Param("STATUS") String status,@Param("MESSAGE") String message,@Param("ID") int id);
}