NHibernate的2.1.0.4000似乎并不喜欢批量插入(NHibernate 2.1.0.4

2019-09-19 15:37发布

我在其中一个项目使用NHibernate 2.1.0.4000。 我已adonet.batch_size100 CFG文件,但是我仍然看到插入语句作为单个语句处理。 更新似乎很好地工作。 这是怎么回事?

更新:是不是因为我选择身份的主键生成器?

<id name="Id" column="Id" unsaved-value="0" type="Int32">
  <generator class ="identity"></generator>
</id>

Answer 1:

我不知道与特定的NHibernate的版本的任何问题。

在您使用native的ID生成器为您的实体? 因为这将迫使每次插入单独发生,选择回生成的ID。 这是因为数据库需要生成每一个ID。 这也可以解释为什么配料似乎上的更新工作。

如果可能的话,你应该切换到例如hilo策略,甚至是guid ,如果你不关心(容易)读取的ID。

法比奥有汉有趣的帖子在这里关于这个话题。



文章来源: NHibernate 2.1.0.4000 doesn't seem to like batch insert