为了账号安全,请及时绑定邮箱和手机立即绑定

一次将整个DataTable插入数据库中,而不是逐行插入吗?

一次将整个DataTable插入数据库中,而不是逐行插入吗?

C#
一只萌萌小番薯 2019-11-27 10:48:42
我有一个数据表,需要将整个内容推送到数据库表。我可以使用foreach将所有内容放入其中,并一次插入每一行。尽管由于有数千行,所以执行速度非常慢。有什么方法可以一次完成整个数据表吗?DataTable的列少于SQL表。其余的应保留为NULL。
查看完整描述

3 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

考虑这种方法,您不需要for循环:


using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection))

{

    bulkCopy.DestinationTableName = 

        "dbo.BulkCopyDemoMatchingColumns";


    try

    {

        // Write from the source to the destination.

        bulkCopy.WriteToServer(ExitingSqlTableName);

    }

    catch (Exception ex)

    {

        Console.WriteLine(ex.Message);

    }

}


查看完整回答
反对 回复 2019-11-27
  • 3 回答
  • 0 关注
  • 559 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信