使用SqlBulkCopy类来批量复制数据

DataTable dt = new DataTable();
dt.Columns.Add("id", typeof(string));

for (int i = 0; i < 100; i++)
{
    DataRow dr = dt.NewRow();
    dr["id"] = "sadf" + i;
    dt.Rows.Add(dr);
}

using (SqlConnection conn = new SqlConnection(@"Data Source=.jd360;Initial Catalog=cn66131_db;Persist Security Info=True;User ID=sa;Password=Zhang123;connect timeout=300000;"))
{
    conn.Open();
    //批量插入到数据库表
    using (System.Data.SqlClient.SqlBulkCopy bulk = new System.Data.SqlClient.SqlBulkCopy(conn))
    {
        bulk.DestinationTableName = "dbo.Table_1";
        bulk.WriteToServer(dt);//DataTable结构必须与数据库表的字段完全一致,并且顺序也一致
    }
}

这是我写的简单的demo。SqlBulkCopy还有更多的功能,可以在园子里找找看。

原文地址:https://www.cnblogs.com/buguge/p/3698725.html