转至:http://www.cnblogs.com/Byrd/archive/2012/3/26.html
1.Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1这个异常是由于主键设置为自增长,而在我们插入记录的时候设置了ID的值导致的。即在映射文件中,设置 <id name="id" column="ID" type="integer"><generator class="increment"/> </id>,而在插入数据时,又设置了ID值导致的。
若使用触发器时,出错的些错误:
解决方案:
在触发器脚本中添加如下语句——起始处(as 之后 begin之前)
set nocount on;结尾处(end之后)
set nocount off
原因分析:Nhibernate在对数据库执行更改操作时,会比较更改记录的数量与数据库返回的实际受 影响记录数(也就是@@ROWCOUNT的返回值),如果两者不一致,就会引发上述异常。而让数据库返回的实际受影响记录数发生变化的原因,就是在触发器 中执行了Update、Insert或Delete语句。而nocount开关的作用,就是让SQL Server在执行数据更改操作后不返回受影响记录数。只要在触发器脚本中执行数据库更改操作前打开nocount开关,就可以让Nhibernate得到正常的预期结果,进而消除此异常。
2.net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB setter of com.your.entity.classname.set***()
也是很常见的错误。引起此错误的原因很多,类型转换出错,NullPoinerExcption等。
这里说一下NullPointerException,Hibernate有一个问题,对于java类型为基本类型的字段,如果数据库中该字段为 null,则load数据时会触发NullPointerException,从而引起PropertyAccessException。
3.NHibernate中No row with the given identifier exists
产生此问题的原因:
有两张表,table1和table2.产生此问题的原因就是table1里做了关联<one-to-one>或者<many-to- one unique="true">(特殊的多对一映射,实际就是一对一)来关联table2.当hibernate查找的时候,table2里的数据没 有与table1相匹配的,这样就会报No row with the given identifier exists这个错.(一句话,就是数据的问题!)
假如说,table1里有自身的主键id1,还有table2的主键id2,这两个字段.
如果NHibernate设置的单项关联,即使table1中的id2为null值,table2中id2中有值,查询都不会出错.但是如果table1中的id2字段有值,但是这个值在table2中主键值里并没有,就会报上面的错!
如果NHibernate是双向关联,那么table1中的id2为null值,但是table2中如果有值,就会报这个错.这种情况目前的解决办法就是改成单项关联,或者把不对应的数据改对!
分享到:
相关推荐
`JdbcTemplate`的`batchUpdate`方法就是用来实现这样的功能,它可以批量执行更新语句,如INSERT、UPDATE或DELETE。 `batchUpdate`方法的基本使用如下: ```java int[] result = jdbcTemplate.batchUpdate( ...
sqlhelper工具,batchupdate方法
在MyBatis中,批量更新(batch update)是一种提高数据库操作效率的重要手段,尤其是在处理大量数据更新时。这里我们将详细探讨如何在Oracle和MySQL数据库中使用MyBatis进行批量更新。 1. **Oracle数据库的批量更新...
标题"Acount_batch.rar_acout_batch"暗示我们正在处理一个与账户管理和批量处理相关的软件工具,其核心是一个批处理脚本(Acount_batch.bat)。批处理是Microsoft Windows操作系统中的一种脚本编写方式,允许用户...
安装 pip3 install mysql_batchUPDATE示例您可以使用可用的模式运行此示例以下示例与以下更新相同: UPDATE batch_test SET date = NOW() WHERE number > 0 . 2 AND date is NULL ; 这等效于以20行为批处理此更新: ...
**问题描述**:执行Hibernate查询语句时,系统提示`Unknown column 'notice0_.myPublishDate' in 'field list'`错误。 **可能原因**:该错误表示Hibernate尝试从数据库中查询一个不存在的字段,通常是由于实体类...
executor.update("test.batchUpdate", item); } executor.executeBatch(); return null; } } ); } } catch (Exception e) { // 处理异常 } ``` 5. **注意事项**: - 确保数据库驱动支持批量更新功能。 -...
SQL Server批量插入批量更新工具类,SqlBulkCopy,BatchUpdate
一个把指定目录下所有windows更新文件自动安装的小工具,省着自己一个个去点更新文件了,这个软件比批处理文件好的一点就是批处理文件还要手动去添加路径和文件,这个不用制定一个目录后自动查找系统还没有安装过的...
标题中的“macro to update windows 7 to last updates”和描述中的“macro to update iso windows 7 to last update”都在强调一个自动化脚本(macro)用于更新Windows 7系统至最新的更新版本。这涉及到Windows操作...
The Definitive Guide to Spring Batch takes you from the “Hello, World!” of batch processing to complex scenarios demonstrating cloud native techniques for developing batch applications to be run on...
在 Mybatis 中,进行 update 操作时,返回的 int 值通常被理解为受影响的行数,然而实际情况可能并不完全如此。这个问题涉及到 Mybatis 如何处理数据库返回的结果以及数据库驱动的行为。 首先,当我们使用 Mybatis ...
Spring Batch是一个开源的轻量级、全面的批处理框架,它是为了解决企业应用中的大规模数据处理需求而设计的。Spring Batch in Action是一本专注于Spring Batch框架的书籍,由Arnaud Cogoluègnes、Thierry Templier...
Spring Batch 是一个强大的、全面的批处理框架,用于处理大量数据的处理任务。它由 Spring 框架提供支持,因此具有高度的可配置性和可扩展性,适用于各种企业级应用。Spring Batch 4.0.0 版本是该框架的一个重要版本...
1.本项目运行在tomcat容器中,主要功能为从spring_batch_left库的user_from表抓取数据,之后批量插入到spring_batch_right库的user_to表 2.应用quartz对job进行定时触发(目前设置的定时为每隔一分钟执行一次,目前...
本文介绍了tensorflow中next_batch的具体使用,分享给... """Return the next `batch_size` examples from this data set.""" if fake_data: fake_image = [1] * 784 if self.one_hot: fake_label = [1] + [0] *
2. **更新(Update)**:如果对象已经存在于数据库中,可以使用`update()`方法来更新其状态。同样,更新操作也是在事务提交时执行。 3. **删除(Delete)**:`delete()`方法用于从数据库中移除一个对象。在调用此...
Spring Batch是一个开源的轻量级批处理框架,它提供了一整套可复用的组件,用于构建健壮且高效的批处理应用程序。由于信息给定的【部分内容】并没有提供实际的技术细节,因此我将基于Spring Batch框架本身,详细介绍...
Spring Batch是一个轻量级的,完全面向Spring的批处理框架,可以应用于企业级大量的数据处理系统。Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供...
spring batch官方文档:https://docs.spring.io/spring-batch spring batch3.x中文文档:http://www.kailing.pub/SpringBatchReference spring batch官方入门实例:https://projects.spring.io/spring-batch/ 简单...