可以考虑使用一次发送多条更新命令的处理方式,这就需要用到UpdateBatchSize属性。 在.NET 2.0之后,SqlClient和OracleClient都支持这个属性,这里以SQL Server数据源为例,介绍一下UpdateBatchSize的基本使用。 UpdateBatchSize的值一共有三种: ① =0,DbDataAdapter将使用服务器能处理的最大批处理大小; ② =1,禁用批量更新; ③ >1,使用UpdateBatchSize 例如,将UpdateBatchSize设置为20时,原本每个更新行发送一次更新命令将变为每20个更新行发送一次更新命令,而每个命令中包含了20个更新一行的命令。下图展示了这一区别: ? (2)批量更新的使用 下面的示例代码展示了如何使用UpdateBatchSize属性来设置批量更新,这里更改了DataHelper的Update方法,在内部设置了UpdateBatchSize属性。
包括一个Database.UpdateDatabase方法的重载,它带有updateBatchSize参数。 设置updateBatchSize参数为正整数将导致 DataAdapter对象将以指定大小的块发送修改到数据库。这减少了数据库回发的次数。 更多信息,请参阅数据访问应用程序块文档。