批量插入期间Fluent NHibernate命令超时

时间:2010-01-20 20:52:27

标签: nhibernate fluent-nhibernate

我正在尝试将大约16000条记录插入到单个表中。因为这很慢,我想批量插入它们。但是,当我尝试这样做时,我总是会收到超时错误。所以我有两个问题:

  1. 加速插入的最佳方法是什么?
  2. 如何增加连接的超时值?

1 个答案:

答案 0 :(得分:5)

首先,您必须使用无状态会话。而不是调用OpenSession(); (在会话工厂中),调用OpenStatelessSession();它与正常会话有很多相同的api,但没有缓存和东西(膨胀数据操作更快)。然后,您需要通过调用.AdoNetBatchSize([[batch size]])来设置批量大小;您在配置中设置数据库的位置。

这可能会成功。但是你应该知道这不是nhibernate(或任何其他orm)构建的中继,所以不要指望任何类型的性能。