温馨提示×

C# ADO.NET执行批量数据更新如何

c#
小樊
84
2024-06-25 02:07:29
栏目: 编程语言

在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类执行批量数据更新可能会更快,但也更复杂。确保在使用之前根据您的具体情况进行适当的测试和优化。

0