sqlbulkcopy mysql_SqlBulkCopy 批量复制数据到数据库

本文介绍了如何使用SqlBulkCopy类批量复制DataTable或DataRow的数据到数据库中,重点讲解了核心方法WriteToServer的使用,注意事项包括表名和列名的大小写敏感性,以及数据一致性要求。同时提供了示例代码,演示了如何设置超时时间、处理列映射,并处理可能出现的重复键值异常。
摘要由CSDN通过智能技术生成

1.简介

核心方法:SqlBulkCopy.WriteToServer

将所有行从数据源复制到 SqlBulkCopy 对象的 DestinationTableName 属性指定的目标表中.

2.一句话介绍

将DataTable或DataRow中的数据直接复制到数据库中指定的表中

3.注意事项

表名、列名对大小写敏感

DataTable的架构必须和目标表保持一致(最常出的错误就是列顺序不一致)

DataTable中int类型的字段如果为NULL,必须对其赋值为 DBNull.Value

SqlBulkCopy遇到重复字段只会直接报错,然后默认回滚所有复制操作即复制到一半出错了,那整个前面复制也都放弃掉

2.示例

1.使用SqlBulkCopy

调用格式

SqlBulkCopyByDatatable(SQLAss.GetConnString(),"PartList", excelDt);

SQLHelper类

public SQLHelper()

{

//DatabaseTest 引用自web.config connectionStrings中

string strconn = ConfigurationManager.ConnectionStrings["SQLAss"].ConnectionString;

conn = new SqlConnection(strconn);

}

public string GetConnString()

{

return conn.ConnectionString;

}

Web.conf

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值