2014-04-16 2 views
2

SQL Server 2014에 대해 응용 프로그램 (C#으로 작성)에서 실행하는 다음 쿼리 (저장 프로 시저로)가 있습니다. dbo.tbl_vwPlanningSalesProc은 메모리 최적화 테이블임을 언급해야합니다!메모리 최적화 테이블에서 분산 쿼리 및 다중 활성 결과 집합 (MARS)이 지원되지 않습니다.

  • 그런데 이미 연결 문자열에서 "MARS (Multiple Active Result Sets)"를 비활성화했습니다!

문제 : 내가 관리 스튜디오 2014에서 쿼리를 발사했을 때, 나는 할 수있는 자체 내가 얻을 것으로 예상하지만 응용 프로그램에서 동일한 쿼리를 발사 할 때 (C# 및 닷넷 4.5.1에 ​​의해 작성 결과) 나는 아래의 오류를 얻을 :


Distributed Queries and Multiple Active Result Sets (MARS) are not supported with memory optimized tables.


쿼리 :

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 
+0

나는 정확히 같은 문제가 있습니다. 문제가 해결되면 계속 게시하십시오. – superbre

답변

0

메모리 최적화 테이블이 'CASE'기능을 지원하지 않기 때문에 'MultipleActiveResultSets = False'를 연결 문자열에 이미 설정 한 경우 발생할 수 있습니다. 여기에서 찾을 수없는 지원되지 않는 모든 구문 https://msdn.microsoft.com/en-us/library/dn246937.aspx