.net 大批量数据传输

前几天,在公司做了一个从Symix ERP系统后台PROGRESS数据库将数据导入到SqlServer2000数据库中,每10钟执行数据更新。同时解决了大批量数据导入的工作。

我利用的是.net2.0中System.Data.SqlClient.SqlBulkCopy类,这个类非常好,以下是数据业务类中的一个方法:

void BatchDataCopy(string SqlConn, string OdbcConn, string OdbcSqlStr)
        {
            string SqlTableName = "";//sqlServer数据库中的表名

            DataEngine.Odbc odbcobj = new DataEngine.Odbc(OdbcConn);
            DataTable DtItemloc = new DataTable();//查询到的数据表
            odbcobj.SelectReaderToTable(DtItemloc, OdbcSqlStr);
            if (odbcobj.Error.Length > 0)
            {
                Writelog(odbcobj.Error);//记录错误日志
                return;
            }

            if (DtItemloc.Rows.Count > 0)
            {

                System.Data.SqlClient.SqlBulkCopy bcp = new System.Data.SqlClient.SqlBulkCopy(SqlConn);
                bcp.DestinationTableName = SqlTableName;//sqlserver2000服务器上目标表的名称。
                bcp.BulkCopyTimeout = 60 * 20;//超时之前操作完成所允许的秒数
                bcp.WriteToServer(DtItemloc);//复制数据
                bcp.Close();//关闭 SqlBulkCopy 实例
            }

        }

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值