hibernate插入一张表中数据时报错,更新和删除不包错但数据库中的数据没有改变,其他表的操作都没有错。

数据库是MYSQLorg.springframework.orm.hibernate4.HibernateOptimisticLockingFailureExceptio... 数据库是MYSQL
org.springframework.orm.hibernate4.HibernateOptimisticLockingFailureException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1; nested exception is org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏5(财富值+成长值)
953004956
2017-08-22 · TA获得超过208个赞
知道答主
回答量:59
采纳率:0%
帮助的人:47.1万
展开全部
出现这个错误原因有三个:
(1)这个异常是由于主键设置为自增长,而在我们插入记录的时候设置了ID的值导致的。
(2)使用的是hibernate的saveOrUpdate方法保存实例
saveOrUpdate要求:只有ID为null才执行save,其他情况下执行update
在保存实例的时候是新增,但你的ID不为null,所有就执行update操作,可是数据库没有主键对应的值,所有出现了异常。
(3)在Hibernate映射一对多,多对一,多对多的时候新增常常会出现异常
具体请见链接:http://blog.csdn.net/lixld/article/details/41958181
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
249134395
2015-03-24 · TA获得超过368个赞
知道小有建树答主
回答量:312
采纳率:0%
帮助的人:97万
展开全部
看看有没有事务锁定,begin tran之后没有commit或者rollback会报这个错误。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
benxiaohai945
2016-12-12 · TA获得超过534个赞
知道小有建树答主
回答量:475
采纳率:0%
帮助的人:262万
展开全部
看下你的ID生成策略, 是否自动生成, 这时插入数据, 不能给ID,否则会报错.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式