" />
您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Java >> 数据库表设置主键自动增长后ssh更新报错

数据库表设置主键自动增长后ssh更新报错

来源:网络整理     时间:2016/8/11 22:30:04     关键词:

关于网友提出的“ 数据库表设置主键自动增长后ssh更新报错”问题疑问,本网通过在网上对“ 数据库表设置主键自动增长后ssh更新报错”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 数据库表设置主键自动增长后ssh更新报错
描述:

mysql数据库,在数据库中把主键设置成自动增长后在SSH中调用getHibernateTemplate().update(user);更新user时会报错。数据库主键自增取消则不报错。请问为什么呢?
user.hbm.xml:










class=“increament、identity、uuid。。等”试了好多都不行。
报错:
org.springframework.orm.hibernate3.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
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:654)
org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:377)
org.springframework.orm.hibernate3.HibernateTemplate.update(HibernateTemplate.java:654)
org.springframework.orm.hibernate3.HibernateTemplate.update(HibernateTemplate.java:650)
pack_daoImpl.UserDAOImpl.updateUser(UserDAOImpl.java:37)
pack_serviceImpl.UserServiceImpl.update(UserServiceImpl.java:41)
pack_action_user.UpdateUserAction.execute(UpdateUserAction.java:26)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
     .
     .
     .
     .
     .


解决方案1:

你的代码这样写肯定报错, 你更新的时候,先把user查询出来,把要更新的值set到user ,然后再update
   这样就不报错了。 操作hibernate的时候要涉及对象的持久态和游离态,你去找些资料看看吧。

解决方案2:

actual row count: 0; expected: 1 
没有要更新的对象~
若果如你所说 。数据库主键自增取消则不报错 
这样的话 我怀疑跟你是否更新了 ID 的值有关 

解决方案3:

你确认你要更新的user对象的id有值?


以上介绍了“ 数据库表设置主键自动增长后ssh更新报错”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3215335.html

相关图片

相关文章