次の方法で共有


ALTER CUBE ステートメント (MDX)

指定されたキューブの構造を変更します。通常、ディメンションの書き戻しをサポートするために使用されます。 アプリケーションでの書き戻しの使用方法の詳細については、ブログ投稿「Analysis Services を使用した書き戻しアプリケーションの構築 (ブログ)」を参照してください。

ディメンションの書き戻しを同時に実行すると、デッドロックが発生する可能性があります。この場合、最初の書き戻しがブロックされコミットできなくなります。これは、共有ロックが 2 番目の書き戻しによって保持されているためです。 このような状況では、エラーは生成されません。また、どのような操作も実行されません。 最終的には、タイムアウトと変更がロールバックされます。

構文

ALTER CUBE
      Cube_Name | CURRENTCUBE
      <alter clause> 
            [ < alter clause> ...n]
 
< alter clause> ::= 
   <create dimension member clause> 
  | <remove dimension member clause>
  | <move dimension member clause> 
    | <update clause> 
    | <create cell calculation clause>
 
<create dimension member clause> ::=
CREATE DIMENSION MEMBER [ParentName.]MemberName
    , [[KEY = Key_Value] 
    | [Property_Name = Property_Value[, ...n]]
 
<dropping clause>::=
DROP 
      DIMENSION MEMBER Member_Name  
            Member_Name ...n ] 
      [WITH DESCENDANTS]
      | [ SESSION ] [ CALCULATED ] MEMBER Member_Name 
                  [ ,Member_Name,...n ] 
    | SET Set_Name
                  [ ,Set_Name,...n ] 
    | [ SESSION ] CELL CALCULATION CellCalc_Name
                  [ ,CellCalc_Name,...n ] 
    | ACTION Action_Name
 
<move dimension member clause> ::=
MOVE DIMENSION MEMBER MemberName
        [, SKIPPED_LEVELS = Unsigned_Integer] 
      [WITH DESCENDANTS]
    UNDER ParentName    
 
<update clause> ::=
UPDATE 
    CUSTOM ROLLUP FOR MEMBER MemberName 
      [,MemberName, ...n] AS MDX_Expression
   | DIMENSION Dimension_Name | Hierarchy_Name
      , DEFAULT_MEMBER = MDX_Expression
   | DIMENSION MEMBER MemberName AS
   [MDX_Expression]
   [Property_Name = Property_Value[, ...n]]
 
<create cell calculation clause>::=
CELL CALCULATION Calculation_Name 
   FOR Set_Expression AS MDX_Expression 
            [ [ CONDITION = 'Logical_Expression' ] 
    | [ DISABLED = { TRUE | FALSE } ] 
    | [ DESCRIPTION =String ] 
    | [ CALCULATION_PASS_NUMBER = Integer] 
    | [ CALCULATION_PASS_DEPTH = Integer] 
    | [ SOLVE_ORDER = Integer] 
    | [ Calculation_Name= Scalar_Expression ], ...n]

ディメンション メンバーの作成

基になるディメンション テーブルに新しい行が追加されます。

引数

  • ParentName
    新しいディメンション メンバーの親の名前を指定する有効な文字列式です。ディメンション メンバーをルート以外の場所に作成する場合に指定します。

  • MemberName
    メンバー名を指定する有効な文字列式です。

  • Key_Value
    新しいディメンション メンバーのキー値を定義する有効なスカラー式です。

  • Property_Name
    メンバー プロパティを表す有効な多次元式 (MDX) 識別子です。

  • Property_Value
    計算されるメンバー プロパティの値を定義する有効な多次元式 (MDX) スカラー式です。

ディメンション メンバーの削除

書き込み可能なディメンションからディメンション メンバーを削除すると、基になるディメンション テーブルからそのメンバーおよび対応する行が削除されます。

引数

  • Cube_Name
    キューブ名を指定する有効な文字列式です。

  • Member_Name
    メンバー名またはメンバー キーを指定する有効な文字列式です。

解説

WITH DESCENDANTS 句を使用しなかった場合、削除したメンバーの子は、削除したメンバーの親の子になります。 WITH DESCENDANTS 句を使用した場合、ディメンション テーブル内にあるすべての子孫および対応する行が削除されます。

注意

計算されるメンバー、名前付きセット、アクション、およびセル計算の削除の詳細については、「DROP MEMBER ステートメント (MDX)」、「DROP SET ステートメント (MDX)」、「DROP ACTION ステートメント (MDX)」、および「DROP CELL CALCULATION ステートメント (MDX)」を参照してください。

既定のディメンション メンバーの更新

この句では、キューブの既定のメンバーを更新します。この句は、MDX 計算スクリプトで既定のメンバーを定義するために使用されます。 データベース ディメンション、キューブ ディメンション、またはユーザー ログインの既定のメンバーを指定できます。 既定のメンバーは、セッション中に変更することもできます。

引数

  • Dimension_Name
    ディメンションの名前を指定する有効な文字列です。

  • MDX_Expression
    メンバーを 1 つ返す有効な MDX 式です。

解説

指定する MDX 式は、静的であっても動的であってもかまいません。

ディメンション メンバーの移動

基になるディメンション テーブルの行が変更されます。

引数

  • ParentName
    移動するディメンション メンバーの新しい親の名前を指定する有効な文字列式です。

  • MemberName
    メンバー名を指定する有効な文字列式です。

  • Unsigned_Integer
    スキップするレベル数を指定する有効な数値です。

WITH DESCENDANTS を指定した場合は、ツリー全体が移動されます。 WITH DESCENDANTS を指定しなかった場合、移動した親の子は、移動したメンバーの親の子になります。 移動を行うことによる影響は、簡単にいえば、基になるディメンション テーブルの親キー列の値を更新することです。

ディメンション メンバーの更新

UPDATE DIMENSION MEMBER 句を使用すると、メンバーのプロパティだけでなく、メンバーに関連付けられているカスタム メンバー式も変更できます。

引数

  • MemberName
    メンバー名を指定する有効な文字列式です。

  • MDX_Expression
    メンバーを 1 つ返す有効な MDX 式です。

  • Property_Value
    計算されるメンバー プロパティの値を定義する有効な MDX スカラー式です。

セル計算の作成

ALTER CUBE ステートメントを使用してセル計算を作成する方法の詳細については、「DROP CELL CALCULATION ステートメント (MDX)」を参照してください。

関連項目

その他の技術情報

MDX データ定義ステートメント (MDX)