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

时间:2010-02-02 02:47:43

标签: asp.net sql sql-server

我试图在我的SQL Server数据库中插入大约100,000个。 当我创建100,000个单独的查询时,它真的很慢,所以我尝试在一个查询中插入所有这些记录,它适用于前几千条记录,但随后它给我一个超时错误。

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

4 个答案:

答案 0 :(得分:3)

查看bulk insert的初学者,其中为服务器提供原始数据文件和描述数据的模式文件(简而言之。)

答案 1 :(得分:2)

也...不要在网络请求中执行此操作。如果你增加CommandTimeout(不同于ConnectionTimeout),你可以解决这个问题,但最佳做法是将这些大量的批量加载放入实际进行加载的进程外作业中。

答案 2 :(得分:1)

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

答案 3 :(得分:1)

另一种可能性(批量插入除外)是调整表索引的填充因子。尝试每个表索引的填充因子为70%,看看你买了什么。