批量插入,asp.net

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

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

我之前使用过SqlBulkCopy类做了几百万次添加。 它看起来很方便。

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

您可以为此目的尝试SSIS

您可以像这样插入SELECT:

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

希望能帮助到你。

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