Microsoft SQL Server 包含名为 bcp 的常用命令行应用程序,用于快速将大文件批量复制到 SQL Server 数据库的表或视图中。 使用 SqlBulkCopy 类可以编写提供类似功能的托管代码解决方案。 还可以通过其他方式将数据加载到 SQL Server 表中(例如 INSERT 语句),但是 SqlBulkCopy 提供的性能要明显优于这些方式。

SqlBulkCopy 类只能用于向 SQL Server 表中写入数据。 但是,数据源不限于 SQL Server;可以使用任何数据源,只要数据可以加载到 DataTable 实例或使用 IDataReader 实例读取即可。

使用 SqlBulkCopy 类可以执行下列操作:

  • 单次批量复制操作

  • 多次批量复制操作

  • 事务中的批量复制操作

http://msdn.microsoft.com/zh-cn/library/7ek5da1a(v=vs.100).aspx


  • 批量复制示例设置 (ADO.NET)

  • 描述批量复制示例中使用的表,并提供用于在 AdventureWorks 数据库中创建表的 SQL 脚本。

  • 单次批量复制操作 (ADO.NET)

  • 描述如何使用 SqlBulkCopy 类将数据单次批量复制到 SQL Server 实例中,以及如何使用 Transact-SQL 语句和 SqlCommand 类执行批量复制操作。

  • 多次批量复制操作 (ADO.NET)

  • 描述如何使用 SqlBulkCopy 类将数据多次批量复制到 SQL Server 实例中。

  • 事务和批量复制操作 (ADO.NET)

  • 描述如何在事务中执行批量复制操作,包括如何提交或回滚事务。