我有一些C#,其中在连接(ExecuteReader
)上创建了一个读取器,然后针对该读取器中的每一行,执行另一个命令(带有ExecuteNonQuery
)。在这种情况下,最好MultipleActiveResultSets=True
在我的连接上使用还是使用多个连接?
Answers:
专门为这种类型的操作添加了多个活动结果集(MARS),这样您不必同时打开两个连接就可以从SqlDataReader中读取并执行其他批处理。
MARS与SQL Server 2005及更高版本兼容。引用MSDN文档:
在引入多个活动结果集(MARS)之前,开发人员必须使用多个连接或服务器端游标来解决某些情况。
有关更多信息,请参见:
读取和更新数据的工作示例:
MSDN库-操纵数据(MARS)向下滚动到“使用MARS读取和更新数据”