注意事项:
1)执行修改操作时
1.如果数据库设置了某个字段例如myModual为必填,请在注解里加nullable = false
①如果编辑页没有myModual这个字段,请在数据库设置myModual的默认值。
或者例如creator是新建后以后都不会改变的,可这样设置
@Column(name = "CREATOR", nullable = false, updatable = false)
private String creator;
②如果是时间格式的字段,例如createTime,可这样设置
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "CREATE_TIME", updatable = false)
private Date createTime = new Date();
③在执行jpql更新时报node to traverse cannot be null错误
一般是你sql语句写错了。
比如把:from写成form了;
还有比如set A = 1 and B = 2,应该是不用and,而是用逗号隔开;
以下正确示例:
@Modifying
@Transactional
@Query("update DfOperationCorrection t set t.status='2',t.updateTime=CURRENT_TIMESTAMP() where t.id in (:correctionIdList)")
void uniqDfoPatent(@Param("correctionIdList") List<Long> correctionIdList);
本文详细介绍了在执行数据库修改操作时,针对特定字段(如必填项、时间戳等)的处理策略,以及使用JPA进行更新操作时可能遇到的问题及解决方法。
868

被折叠的 条评论
为什么被折叠?



