代码之家  ›  专栏  ›  技术社区  ›  Maksim Vi.

在一个查询中插入多个记录

  •  2
  • Maksim Vi.  · 技术社区  · 15 年前

    我正试图在我的SQL Server数据库中插入大约100000个。 当我创建100000个单独的查询时,速度真的很慢,所以我尝试在一个查询中插入所有这些记录,这对前几千个记录有效,但随后它给我带来了一个超时错误。

    将多个记录插入数据库的最快方法是什么?

    4 回复  |  直到 15 年前
        1
  •  2
  •   Al W    15 年前

    另外…不要在Web请求中这样做。如果增加commandTimeout(不同于connectionTimeout),您就可以解决这个问题,但最佳做法是将这些大量的批量加载放到实际执行加载的进程外作业中。

        2
  •  3
  •   LesterDove    15 年前

    观察 bulk insert 首先,向服务器提供一个原始数据文件和一个描述数据的模式文件(简而言之)。

        3
  •  1
  •   Jay    15 年前

    大容量插入(这将为您处理将插入拆分为可管理的批处理事务): http://msdn.microsoft.com/en-us/library/ms188365.aspx

        4
  •  1
  •   M6rk    15 年前

    另一种可能性(大容量插入除外)是调整表索引的填充因子。在每个表的索引上尝试70%的填充因子,看看它能为您带来什么。