在C#中使用ADO.NET执行批量数据更新可以使用SqlBulkCopy
类。SqlBulkCopy
类允许您高效地将大量数据从一个数据源快速复制到另一个数据源。
以下是一个简单的示例,演示如何使用SqlBulkCopy
类执行批量数据更新:
using System;
using System.Data;
using System.Data.SqlClient;
class Program
{
static void Main()
{
string connectionString = "your_connection_string_here";
DataTable dataTable = new DataTable();
// 添加列和行到dataTable
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection))
{
bulkCopy.DestinationTableName = "YourDestinationTableName";
// 设置映射关系
bulkCopy.ColumnMappings.Add("SourceColumn1", "DestinationColumn1");
bulkCopy.ColumnMappings.Add("SourceColumn2", "DestinationColumn2");
// 添加更多的列映射
bulkCopy.WriteToServer(dataTable);
}
}
Console.WriteLine("Bulk data update done.");
}
}
在上面的示例中,您需要将your_connection_string_here
替换为您的数据库连接字符串,将YourDestinationTableName
替换为目标数据库表的名称,并设置适当的列映射关系。然后,通过调用WriteToServer
方法将数据从dataTable
批量写入到数据库表中。
请注意,使用SqlBulkCopy
类执行批量数据更新可能会更快,但也更复杂。确保在使用之前根据您的具体情况进行适当的测试和优化。