本文介绍了MARS(多个活动结果集)的缺点?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有谁知道 MARS(多活动结果集)的任何缺点吗?有谁知道应该避免使用 MARS 的任何原因,例如游标比 MARS 更有用的情况.

Does anyone know of any disadvantages of MARS (Multiple Active Result Sets)? Does anyone know of any reason why one should avoid using MARS, like cases where cursors are more useful then MARS.

推荐答案

显然至少有两个已知的(潜在的)缺点(从这个 (1) 团队博客):

There are apparently at least two known (potential) drawbacks (from this (1) Team blog):

  1. 显然,这可能会导致任何未设计为针对启用 MARS 的设计运行的遗留系统的潜在问题 - 优化为在非 MARS 世界中运行的现有代码可能会显示出轻微的性能使用 MARS 未修改运行时浸入

使用 MARS,您可以向服务器发送多个多语句批次.服务器将交错执行此类批处理,这意味着如果批处理通过 SET 或 USE 语句更改服务器状态,例如,或使用 TSQL 事务管理语句(BEGIN TRAN、COMMIT、ROLLBACK),您和服务器都会感到困惑了解您的实际意图."

我还没有尝试过启用 MARS 的设计,但在我当前的项目中我已经非常接近这样做了.我们在竞争(有时是依赖)查询操作(例如从活动记录集正在执行的同一个数据库中延迟加载配置数据)方面存在一个小问题.

I've yet to try out a MARS enabled design, but I'm coming very close to doing so on my current project. We have a slight issue with competing (and sometimes dependent) query operations (like lazy loading configuration data out of the same database that an active recordset is executing).

有关 MSDN 站点的更多信息(2) 此处

There's more information on the MSDN site (2) here

[ (1) https://web.archive.org/web/20190911155929/https://blogs.msdn.microsoft.com/sqlnativeclient/2006/09/27/using-mars-with-sql-native-client/ ]
[ (2) http://msdn.microsoft.com/en-us/图书馆/ms131686.aspx ]

这篇关于MARS(多个活动结果集)的缺点?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-21 16:53