码迷,mamicode.com
首页 > Web开发 > 详细

关于Hibernate级联更新插入信息时提示主键不为空的问题“org.hibernate.StaleStateException: Batch update returned unexpected row count from update: 0 actual row count: 0 expected: 1 ”

时间:2019-02-10 00:03:18      阅读:435      评论:0      收藏:0      [点我收藏+]

标签:state   rup   null   其它   情况   这一   except   code   数据   

org.hibernate.StaleStateException: Batch update returned unexpected row count from update: 0 actual row count: 0 expected: 1 

出现这一错误的主要原因有两个 
      使用的是hibernate的saveOrUpdate方法保存实例。saveOrUpdate方法要求ID为null时才执行SAVE,在其它情况下执行UPDATE。在保存实例的时候是新增,但你的ID不为null,所以使用的是UPDATE,但是数据库里没有主键相关的值,所以出现异常。

解决方法:

  把可能不为空的附表ID设置为空就OK

例如:

   技术图片

这里把插入表中的ID改为null,即可插入成功。

关于Hibernate级联更新插入信息时提示主键不为空的问题“org.hibernate.StaleStateException: Batch update returned unexpected row count from update: 0 actual row count: 0 expected: 1 ”

标签:state   rup   null   其它   情况   这一   except   code   数据   

原文地址:https://www.cnblogs.com/xiachan/p/10358451.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!