Home > Database > Mysql Tutorial > How to Efficiently Insert a DataTable into a SQL Server Database?

How to Efficiently Insert a DataTable into a SQL Server Database?

Susan Sarandon
Release: 2025-01-07 22:40:46
Original
253 people have browsed it

How to Efficiently Insert a DataTable into a SQL Server Database?

Optimize batch insertion of DataTable into database

When inserting large amounts of data into the database, row-by-row insertion is inefficient. Using batch insertion technology can significantly improve performance.

SqlBulkCopy implements efficient data insertion

For SQL Server databases, the SqlBulkCopy class provides an efficient way to insert a DataTable into the database in a single operation. This method avoids row-by-row insertion and greatly reduces processing time.

Code Example

The following code demonstrates how to use SqlBulkCopy:

using (var bulkCopy = new SqlBulkCopy(_connection.ConnectionString, SqlBulkCopyOptions.KeepIdentity))
{
    // 将DataTable列映射到SQL表列
    foreach (DataColumn col in table.Columns)
    {
        bulkCopy.ColumnMappings.Add(col.ColumnName, col.ColumnName);
    }

    // 设置目标表名
    bulkCopy.DestinationTableName = destinationTableName;

    // 设置超时时间(可选)
    bulkCopy.BulkCopyTimeout = 600;

    // 将DataTable插入数据库
    bulkCopy.WriteToServer(table);
}
Copy after login

Custom mapping (optional)

If the DataTable column names do not match the SQL table column names, you can use the ColumnMappings property of SqlBulkCopy to map manually.

The above is the detailed content of How to Efficiently Insert a DataTable into a SQL Server Database?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template