Dim dt As DataTable = New DataTable()
dt.Columns.Add("DtCostProductRuleGUID", GetType(Guid))
dt.Columns.Add("RecollectGUID", GetType(Guid))
dt.Columns.Add("ProjCode", GetType(String))
dt.Columns.Add("ProductGUID", GetType(Guid))
dt.Columns.Add("CostCode", GetType(String))
dt.Columns.Add("CostShortName", GetType(String))
dt.Columns.Add("ParentCode", GetType(String))
dt.Columns.Add("CostLevel", GetType(Integer))
dt.Columns.Add("IfEndCost", GetType(Integer))
dt.Columns.Add("DtCost", GetType(Decimal))
dt.Columns.Add("IsAttend", GetType(Integer))
Dim row As DataRow
Using scope As ConnectionScope = New ConnectionScope
For Each xmlNode In xmlNodeList
strCostCode = xmlNode.Attributes("CostCode").Value
strCostShortName = xmlNode.Attributes("CostShortName").Value
strParetnCode = xmlNode.Attributes("ParentCode").Value
iCostLevel = CInt(xmlNode.Attributes("CostLevel").Value)
iIfEndCost = CInt(xmlNode.Attributes("IfEndCost").Value)
decDtCost = CDec(xmlNode.Attributes("DtCost").Value)
For i = To iProductCount -
row = dt.NewRow()
row("DtCostProductRuleGUID") = Guid.NewGuid()
row("CostCode") = strCostCode
row("CostLevel") = iCostLevel
row("CostShortName") = strCostShortName
row("DtCost") = decDtCost
row("IfEndCost") = iIfEndCost
row("IsAttend") = xmlNode.Attributes(dtProduct.Rows(i).Item("Product")).Value.ToString()
row("ParentCode") = strParetnCode
row("ProductGUID") = dtProduct.Rows(i).Item("ProductGUID").ToString()
row("ProjCode") = sProjCode
row("RecollectGUID") = sRecollectGUID
dt.Rows.Add(row)
Next
Next
'保存金蝶业态
xmlNode = xmlDOM.SelectSingleNode("/data/jdRow")
For i = To iProductCount -
strSQL = "update cb_JdProductRule set JdProductName='" & xmlNode.Attributes(dtProduct.Rows(i).Item("Product")).Value.ToString() & _
"' where RecollectGUID=@RecollectGUID and ProductGUID='" & dtProduct.Rows(i).Item("ProductGUID").ToString() & "';" sbStr.Append(strSQL)
Next
CPQuery.From(sbStr.ToString(), param).ExecuteNonQuery() Dim bulkCopy As SqlBulkCopy = scope.CreateSqlBulkCopy(SqlBulkCopyOptions.FireTriggers)
bulkCopy.DestinationTableName = "cb_DtCostProductRule"
bulkCopy.WriteToServer(dt)
End Using

使用SqlBulkCopy进行批量数据插入的更多相关文章

  1. yii批量数据插入

    yii框架批量插入数据有两种方法,第一种是循环多次插入和一次批量插入,第一种方法要注意插入数据中间有一次数据插入失败要注意回滚事务 循环插入数据 第一种方法 $model = new User(); ...

  2. MyBatis Plus 批量数据插入功能,yyds!

    最近 Review 小伙伴代码的时候,发现了一个小小的问题,小伙伴竟然在 for 循环中进行了 insert (插入)数据库的操作,这就会导致每次循环时都会进行连接.插入.断开连接的操作,从而导致一定 ...

  3. EF结合SqlBulkCopy实现高效的批量数据插入 |EF插件EntityFramework.Extended实现批量更新和删除

    原文链接:http://blog.csdn.net/fanbin168/article/details/51485969   批量插入 (17597条数据批量插入耗时1.7秒)   using Sys ...

  4. c# 使用SqlBulkCopy 提高大数据插入数据库速度

    自己得一点总结: 1.BulkCopy采用的是插入方式,不是覆盖方式(原数据不动,在原数据的后面复制上dataTable中的内容) 2.自增的字段不用赋值 3.数据库字段名和dataTable列名可以 ...

  5. [oracle/java/sql]用于上十万批量数据插入Oracle表的Java程序

    程序下载:https://files.cnblogs.com/files/xiandedanteng/LeftInnerNotExist20191222.rar 原理:Oracle的Insert al ...

  6. 原创 SqlParameter 事务 批量数据插入

    不错,很好,以后防注入批量事务提交虽然麻烦点研究了几个小时,但不会是问题了 SqlCommand cmd; HelpSqlServer helps = new HelpSqlServer(); //定 ...

  7. 使用SqlBulkCopy进行批量插入数据时踩过的坑

    之前一直都没用过SqlBulkCopy关键字进行数据插入,更没了解过. 事因:因业务需要在数据表中添加两列,然后将数据插入进表中 之前都是这样写的 dt.Columns.Add(new DataCol ...

  8. KingbaseES批量数据加载的实践技巧

    有时,KingbaseES数据库需要在单个或最少的步骤中导入大量数据,这通常称为批量数据导入.其中数据源通常是一个或多个大文件,这个过程有时可能非常慢. 造成性能不佳的原因有很多:索引.触发器.外键. ...

  9. .Net批量插入数据到SQLServer数据库,System.Data.SqlClient.SqlBulkCopy类批量插入大数据到数据库

    批量的的数据导入数据库中,尽量少的访问数据库,高性能的对数据库进行存储. 采用SqlBulkCopy来处理存储数据.SqlBulkCopy存储大批量的数据非常的高效,将内存中的数据表直接的一次性的存储 ...

随机推荐

  1. 《R实战》读书笔记一

    你仅仅要想处理数据,<R实战>这本书就能够助你一臂之力. <R实战>的目标是让你认识R,而且可以对数据进行操作.可视化和理解.该书包含4部分16个章节8个附录. 第一部分:入门 ...

  2. SQLite: sqlite_master(转)

    转自:http://blog.sina.com.cn/s/blog_6afeac500100yn9k.html SQLite数据库中一个特殊的名叫 SQLITE_MASTER 上执行一个SELECT查 ...

  3. win7防火墙里开启端口的图文教程

    转载于:http://www.cnblogs.com/vipsoft/archive/2012/05/02/2478847.html 开启端口:打开“控制面板”中的“Windows防火墙”,点击左侧的 ...

  4. 2D上下文

    js中说明的上下文表示的意思为C++中作用域(个人理解),因此2D上下文说明的是这个2D的作用域 像素:用来描述图片清晰度的小矩阵 填充和描边 填充:context.fillStyle = " ...

  5. 【Henu ACM Round#17 D】Hexagons!

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 题目的图吓人. 找下规律就会发现从内到外是1,6,12,18 即1,16,26,36... 即1+6(1+2+3+...) 等差求和 ...

  6. CSUOJ 1644 超能陆战队

    1644: 超能陆战队 Time Limit: 1 Sec  Memory Limit: 256 MBSubmit: 6  Solved: 1[Submit][Status][Web Board] D ...

  7. Cocos2d-x手机游戏开发与项目实践具体解释_随书代码

    Cocos2d-x手机游戏开发与项目实战具体解释_随书代码 作者:沈大海  因为原作者共享的资源为UTF-8字符编码.下载后解压在win下显示乱码或还出现文件不全问题,现完整整理,解决全部乱码问题,供 ...

  8. JavaWeb-04(BOM&amp;DOM)

    JavaWeb-04 JavaWeb-BOM&DOM BOM 一.知识回想 * BOM 概述 * BOM 的各个对象 * window对象 innerHeight,innerWidth doc ...

  9. LeetCode102 Binary Tree Level Order Traversal Java

    题目: Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to ri ...

  10. SAP学习之路

    此贴记录学习SAP过程~如有错误请指出~ 6.看着网上学习SAP的貌似比較花精力.学习好的话发展前景还是不错的 5.尽管还不是非常懂.可是还是充满期待,期待着java转型abap. 能够在虚拟机上安装 ...