加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何通过C#代码在Sql中执行批量更新

发布时间:2020-12-15 06:17:25 所属栏目:百科 来源:网络整理
导读:我想更新下面的多行 update mytable set s_id = {0} where id = {1} (这里s_id是基于一些复杂的逻辑进行评估的). 出于性能原因,更新应分批进行.有没有办法批量更新语句并通过单个执行语句执行批处理?我知道在JAVA中我们可以通过JDBC来做到这一点.在C#中有类
我想更新下面的多行
update mytable set s_id = {0} where id = {1}

(这里s_id是基于一些复杂的逻辑进行评估的).
出于性能原因,更新应分批进行.有没有办法批量更新语句并通过单个执行语句执行批处理?我知道在JAVA中我们可以通过JDBC来做到这一点.在C#中有类似的方法吗?

提前致谢

解决方法

是的,你可以使用 SqlDataAdapter.

SqlDataAdapter具有InsertCommand和UpdateCommand属性,允许您指定用于将新行插入到数据库中的SQLCommand和SqlCommand,以分别更新数据库中的行.

然后,您可以将DataTable传递给数据库的Update方法,并将语句批处理到服务器 – 对于作为新行的DataTable中的行,它执行INSERT命令,对于执行UPDATE命令的修改行.

您可以使用UpdateBatchSize属性定义批量大小.

这种方法允许您处理大量数据,并允许您以不同的方式处理错误,即,如果特定更新遇到错误,您可以告诉它不要抛出异常,而是继续执行剩余的通过设置ContinueUpdateOnError属性进行更新.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读