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)」を参照してください。