SqlBulkCopy 来自数据源的 String 类型的给定值不能转换为指定目标列的类型 bit「建议收藏」

SqlBulkCopy 来自数据源的 String 类型的给定值不能转换为指定目标列的类型 bit「建议收藏」使用SqlBulkCopy批量插入,可以快速对大批量的数量插入,性能非常好在使用时出现“来自数据源的String类型的给定值不能转换为指定目标列的类型bit”异常为DataTable与要插入的数据表字段位置不一样所至DataTable与要插入的数据表要字段名,位置,数据类型都一至才可示例,使用使用SqlBulkCopy插入多个表publicbo…

大家好,又见面了,我是你们的朋友全栈君。

使用SqlBulkCopy批量插入,可以快速对大批量的数量插入,性能非常好

在使用时出现“来自数据源的 String 类型的给定值不能转换为指定目标列的类型 bit”异常

为DataTable与要插入的数据表字段位置不一样所至

DataTable与要插入的数据表要字段名,位置,数据类型都一至才可

示例,使用使用SqlBulkCopy插入多个表

 

        public bool BatchInsertUniqeCode(DataTable uniqueCodeProduceContrastDt,DataTable uniqueCodeGenerateDt)
        {
            using(SqlConnection conn= (SqlConnection)(base.DbContext.Database.Connection))
            {
                if (conn.State == ConnectionState.Closed) { conn.Open(); }
                SqlTransaction tran = conn.BeginTransaction();
                SqlBulkCopy upBlock = new SqlBulkCopy(conn, SqlBulkCopyOptions.Default, tran);
                SqlBulkCopy ugBlock = new SqlBulkCopy(conn, SqlBulkCopyOptions.Default, tran);
                try
                {
                    ugBlock.DestinationTableName = "UniqueCodeGenerate";
                    ugBlock.BatchSize = uniqueCodeGenerateDt.Rows.Count;
                    if (uniqueCodeGenerateDt != null && uniqueCodeGenerateDt.Rows.Count > 0)
                    {
                        ugBlock.WriteToServer(uniqueCodeGenerateDt);
                    }
                    ugBlock.Close();


                    upBlock.DestinationTableName = "UniqueCodeProduceContrast";
                    upBlock.BatchSize = uniqueCodeProduceContrastDt.Rows.Count;
                    if (uniqueCodeProduceContrastDt != null && uniqueCodeProduceContrastDt.Rows.Count > 0)
                    {
                        upBlock.WriteToServer(uniqueCodeProduceContrastDt);
                    }
                    upBlock.Close();

                    tran.Commit();
                    return true;
                }
                catch(Exception ex)
                {
                    tran.Rollback();
                    throw ex;
                }
                finally
                {
                    upBlock.Close();
                    ugBlock.Close();
                    conn.Close();
                }

            }

        }

 

转载于:https://www.cnblogs.com/berlin/p/6766779.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162217.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 『迷你教程』机器学习的Bootstrap及Python实现[通俗易懂]

    『迷你教程』机器学习的Bootstrap及Python实现[通俗易懂]文章目录引导法引导程序的配置引导程序APIBootstrap方法是一种重采样技术,用于通过对数据集进行替换采样来估计总体统计数据。它可用于估计汇总统计数据,例如均值或标准差。它在应用机器学习中用于在对未包含在训练数据中的数据进行预测时估计机器学习模型的技能。估计机器学习模型技能的结果的一个理想特性是可以用置信区间表示估计的技能,这是其他方法(例如交叉验证)不容易获得的特征。在本文中您将发现用于估计机器学习模型对未知数据的技能的引导重采样方法。bootstrap方法涉及对数据集进行迭代重采样

    2022年9月25日
    0
  • HTTP.sys remote code execution vulnerability「建议收藏」

    HTTP.sys remote code execution vulnerability「建议收藏」IIS系列Http.sys处理Range整数溢出漏洞导致远程代码执行1.漏洞概要2015年04月14日,微软发布严重级别的安全公告MS15-034,编号为CVE-2015-1635,据称在Http.sys中的漏洞可能允许远程执行代码。2.漏洞描述CWE:CWE-119 CVE:CVE-2015-1635   Http.sys是一个位于Windows操作系统核…

    2022年7月18日
    16
  • java安装以及配置环境变量详细步骤

    java安装以及配置环境变量详细步骤java安装以及配置环境变量详细步骤一、安装JDK(JavaDevelopmentKit开发工具包)下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html选择然后选择然后等待下载安装。下载完成之后开始点击安装(安装的路径尽量不要有中文出现,否则后期可能出现问题)一般安装路径默认就好…

    2022年7月8日
    21
  • PHP程序开发之使用header定义一个php页面为utf-8编码或GBK编码

    PHP程序开发之使用header定义一个php页面为utf-8编码或GBK编码php页面为utf-8编码 header(“Content-type:text/html;charset=utf-8”); php页面为gbk编码 header(“Content-type:text/html;charset=gb2312”); php页面为big5编码 header(“Content-type:text/html;charset=b

    2022年7月11日
    29
  • 知名技术团队博客网站有哪些_知名创业团队

    知名技术团队博客网站有哪些_知名创业团队国内技术团队博客1 http://tech.meituan.com/美团点评技术团队2 http://fe.meituan.com/ 美团前端技术团队3 http://tech.uc.cn/   UC技术团队4 http://tencentdba.com/ 腾讯游戏DBA团队5 http://noops.me/    小米运维部非官方博客

    2022年8月13日
    3
  • iscsi服务起不来_unable to init server

    iscsi服务起不来_unable to init serverISCSI报错:Could not create NetworkPortal in configFS

    2022年4月20日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号