Udostępnij za pośrednictwem


Instrukcja moduł UPDATE (MDX)

Aktualizuje wartość określonego typu liść lub nonleaf komórka w moduł, opcjonalnie przydzielania wartości dla określonej komórka typu nie liść przez komórka zależne od typu liść.

UPDATE [ CUBE ] Cube_Name 
   SET 
            <update clause> 
           [, <update clause> ...n ]
  
<update clause> ::= 
      Tuple_Expression[.VALUE]= New_Value
      [ 
        NO_ALLOCATION
      | USE_EQUAL_ALLOCATION 
            | USE_EQUAL_INCREMENT 
            | USE_WEIGHTED_ALLOCATION [ BY Weight_Expression] 
           | USE_WEIGHTED_INCREMENT [ BY Weight_Expression]
      ]

Argumenty

  • Cube_Name
    Prawidłowy ciąg, który zawiera nazwę moduł.

  • Tuple_Expression
    Prawidłowe wyrażenie Multidimensional Expressions (MDX), która zwraca spójna kolekcja.

  • New_Value
    Prawidłowe wyrażenie liczbowe.

  • Weight_Expression
    Prawidłowe wyrażenie liczbowe Multidimensional Expressions (MDX) zwraca wartość dziesiętną między 0 i 1.

Remarks

Komórka, określonych przez wyrażenie spójna kolekcja może być dowolną prawidłową komórkę w przestrzeni wielowymiarowej (oznacza to, komórka nie musi być komórką typu liść).Jednak komórka muszą być zagregowane z agregacja funkcja agregacja i nie może zawierać obliczany element członkowski spójna kolekcja, używany do identyfikacji komórka.

Pomocne może być wyobrazić sobie UPDATE CUBE Instrukcja jako procedura, która będzie automatycznie generować serii operacji stornowania pojedynczej komórka do komórek liścia i typu nie liść, które będą agregowanych do określonej kwoty.

W poniższej tabela opisano metody alokacji.

Metoda alokacji

Description

USE_EQUAL_ALLOCATION

Każdej komórka typu liść, który przyczynia się do komórka zaktualizowane zostanie przypisana wartość równą oparte na następujące wyrażenie:

<leaf cell value> = 
<New Value> / Count(leaf cells that are contained in <tuple>)

USE_EQUAL_INCREMENT

Każdej komórka typu liść, który przyczynia się do komórka zaktualizowane zostaną zmienione zgodnie z następującym wyrażeniem:

<leaf cell value> = <leaf cell value> + 
(<New Value > - <existing value>) /
Count(leaf cells contained in <tuple>)

USE_WEIGHTED_ALLOCATION

Każdej komórka typu liść, który przyczynia się do komórka zaktualizowane zostaną przypisane równe wartości, która opiera się na następujące wyrażenie:

<leaf cell value> = < New Value> * Weight_Expression

USE_WEIGHTED_INCREMENT

Każdej komórka typu liść, który przyczynia się do komórka zaktualizowane zostaną zmienione zgodnie z następującym wyrażeniem:

<leaf cell value> = <leaf cell value> + 
(<New Value> - <existing value>)  * Weight_Expression

Jeżeli nie określono wyrażenia wagi, UPDATE CUBE Instrukcja niejawnie używane następujące wyrażenie:

Weight_Expression = <leaf cell value> / <existing value>

Wyrażenie wagi powinien być wyrażony jako wartość dziesiętna z zakresu od zera (0) do 1.Ta wartość określa stopień przydzielonego wartość, która ma zostać przypisana w komórkach typu liść, których dotyczy przydział.Programista aplikacji klient odpowiada tworzenia wyrażenie, których wartości agregacja pakietu zbiorczego będzie równa przydzielonego wartość wyrażenie.

Ostrzeżenie

Aplikacja kliencka musi uwzględniać alokacji wszystkich wymiarów jednocześnie, aby uniknąć nieoczekiwanych wyniki można, w tym wartości zbiorczy nieprawidłowe lub niespójne dane.

Każdy UPDATE CUBE Alokacja, należy rozważyć niepodzielny przeznaczone do celów transakcyjnych. Oznacza to, że jeśli jednej z operacji alokacji jakiegoś powodu nie powiedzie się, na przykład błąd w formule lub naruszenia zabezpieczeń, cała operacja UPDATE moduł powiedzie się.Przetworzenia obliczeń, alokacji poszczególnych operacji, dokładną kopią danych jest podjąć w celu zapewnienia, że wynikowa obliczenia są poprawne.

Ostrzeżenie

W przypadku, gdy używany na miara, która zawiera liczby całkowite, metoda USE_WEIGHTED_ALLOCATION może zwracać wyniki nieprecyzyjne powodowane przez przyrostowych zmian zaokrąglania.

Important noteImportant Note:

Gdy zaktualizowanych komórek nie pokrywają się, Update Isolation Level Właściwość ciąg połączenia można zwiększyć wydajność UPDATE moduł. Aby uzyskać więcej informacji zobacz ConnectionString().

See Also

Reference

ConnectionString()

Other Resources