内存优化表中不支持分布式查询和多个活动结果集(MARS)

时间:2014-04-16 10:10:28

标签: distributed sql-server-2014 memory-optimized-tables

我有以下查询(作为存储过程)我喜欢从应用程序(由C#编写)对SQL Server 2014启动它,我还应该提到dbo.tbl_vwPlanningSalesProc是一个内存优化表!

  • 顺便说一句,我已经禁用了多个活动结果集(MARS)"在我的连接字符串中!

问题: 当我从管理工作室2014启动查询时,我可以得到我期望获得的结果,但是当我从应用程序(由C#和.Net 4.5.1编写)触发完全相同的查询时,我得到以下错误:


  

分布式查询和多个活动结果集(MARS)不是   支持内存优化表。


查询:

ALTER PROC [dbo].[spWeeklyStockSheetGetProcurementBrand]

AS 
SELECT   
         Brand = v.Brand       
         ,RowLevel = CASE WHEN v.Brand = 'N/A' THEN 2 ELSE 1 END
         ,m = max([year])
FROM dbo.tbl_vwPlanningSalesProc v
WHERE datatype = 'Procurement'
group by brand 
ORDER BY RowLevel,Brand

1 个答案:

答案 0 :(得分:0)

如果您已设置' MultipleActiveResultSets = False'在你的连接字符串中,因为内存优化表不支持' CASE'特征。您可以在此处找到所有不受支持的构造https://msdn.microsoft.com/en-us/library/dn246937.aspx