Freigeben über


Verwenden von Variablen und Parametern (MDX)

In Microsoft SQL Server Analysis Services können Sie eine MDX-Anweisung (Multidimensional Expressions) parametrisieren. Mit einer parametrisierten Anweisung können Sie generische Anweisungen erstellen, die zur Laufzeit angepasst werden können.

Beim Erstellen einer parametrisierten Anweisung identifizieren Sie den Parameternamen, indem Sie dem Namen das At-Zeichen (@) voranstellen. Zum Beispiel, @Year wäre ein gültiger Parametername.

MDX unterstützt nur Parameter für Literal- oder Skalarwerte. Um einen Parameter zu erstellen, der auf ein Element, einen Satz oder ein Tupel verweist, müssen Sie eine Funktion wie StrToMember oder StrToSet verwenden.

Im folgenden XML for Analysis (XMLA)-Beispiel enthält der @CountryName Parameter das Land, für das Kundendaten abgerufen werden:

<Envelope xmlns="https://schemas.xmlsoap.org/soap/envelope/">  
  <Body>  
    <Execute xmlns="urn:schemas-microsoft-com:xml-analysis">  
      <Command>  
        <Statement>  
select [Measures].members on 0,   
       Filter(Customer.[Customer Geography].Country.members,   
              Customer.[Customer Geography].CurrentMember.Name =  
              @CountryName) on 1  
from [Adventure Works]  
</Statement>  
      </Command>  
      <Properties />  
      <Parameters>  
        <Parameter>  
          <Name>CountryName</Name>  
          <Value>'United Kingdom'</Value>  
        </Parameter>  
      </Parameters>  
    </Execute>  
  </Body>  
</Envelope>  

Um diese Funktionalität mit OLE DB zu verwenden, würden Sie die ICommandWithParameters Schnittstelle verwenden. Um diese Funktionalität mit ADOMD.Net zu verwenden, verwenden Sie die AdomdCommand.Parameters-Auflistung .

Siehe auch

MDX Scripting Fundamentals (Analysis Services)