gpt4 book ai didi

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

转载 作者:可可西里 更新时间:2023-11-01 08:15:25 24 4
gpt4 key购买 nike

我想像下面这样更新多行

update mytable set s_id = {0} where id = {1}

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

提前致谢

最佳答案

是的,您可以使用 SqlDataAdapter .

SqlDataAdapter 有 InsertCommandUpdateCommand允许您分别指定用于将新行插入数据库的 SQLCommand 和用于更新数据库中的行的 SqlCommand 的属性。

然后您可以将 DataTable 传递给 Update数据适配器的方法,它会将语句批量发送到服务器 - 对于 DataTable 中的新行,它执行 INSERT 命令,对于修改的行,它执行 UPDATE 命令。

您可以使用 UpdateBatchSize 定义批量大小属性(property)。

这种方法允许您处理大量数据,并允许您以不同的方式很好地处理错误,即如果特定更新遇到错误,您可以告诉它不要抛出异常但继续通过设置 ContinueUpdateOnError 与其余更新属性(property)。

关于c# - 如何通过C#代码在Sql中进行批量更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2327081/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com