批量插入,asp.net

时间:2009-08-18 19:51:28

标签: c# asp.net sql-server bulkinsert

我需要提供与会员相对应的ID号列表。它们可以在任何给定时间处理10到10,000之间。我没有收集数据,解析数据并将其加载到DataTable或任何东西(C#),但我想在数据库中进行一些操作。将所有这些数据插入表中的最佳方法是什么?

我很确定我不想为每个语句运行一次并插入10,000次。

5 个答案:

答案 0 :(得分:5)

我之前使用过SqlBulkCopy课做了几百万次加法。这看起来很方便。

答案 1 :(得分:2)

您可能不想执行10,000次INSERT,但可以将这10,000个插入包装到1个事务中。

答案 2 :(得分:0)

您可以为此目的尝试SSIS

答案 3 :(得分:0)

您可以像这样插入SELECT:

INSERT INTO myTable(a,b,c)SELECT d,e,f FROM anotherTable WHERE ...

希望它有所帮助。

答案 4 :(得分:0)

使用SQL Server 2008,您可以将C#数据集(实际的DataTable对象)作为table valued parameter传递。该参数在Transact-SQL代码中可用作您可以查询和操作的@table变量。