我在这里有一个奇怪的。 我正在使用nhibernate,我的问题是,在较大的数据插入时,不会抛出任何异常,表中没有数据,但身份关键字已被占用。所以当我手动插入下一条记录时,身份密钥会跳过一些数据,就像数据被导入并删除一样?!?!nHibernate数据插入问题/神秘
这里有一些事情要考虑: - 我从Web服务获取数据,因此每个项目需要一段时间,它被调用之前再接再厉 - 根据它或者是插入或更新的项目 - 我使用foreach遍历获取的集合,然后检查它是否更新或插入(即,我尝试填充实体或创建新实例,然后在最后调用make persistent。) - 代码工作正常因为数据在较小的批次上插入并在数据库中可见。对于需要稍长一点的导入,它仍然没有任何例外地完成,但没有可见的数据,但只有线索是已被插入和可见的标识关键字占用。
任何人都可以解释这里发生了什么? 由于我没有得到任何例外,我无法诊断这一点,任何帮助或建议非常感谢!
谢谢你的回答,非常准确地回答。批处理被包装在单个事务中,所以你对回滚的建议必须正是发生的事情。 实际上有一个异常被手动捕获,并且是由于需要将实体驱逐出来才能进行下一次更新/插入。 非常感谢所有回复您的朋友! – Sid 2010-11-20 16:11:52