MDX数据定义 - ALTER CUBE

改变指定立方体的结构,通常用于支持维度写回。 有关在应用中使用写回的更多信息,请参阅这篇博客文章: 利用分析服务构建写回应用(博客)

注意,并发维度写回可能导致死锁,即第一个写回因第二个写回持有共享锁而被阻止提交。 此时不产生错误,但两操作均无法继续。 最终,暂停和更改都会被回滚。

Syntax

  
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]  

创建维度成员

在底层维数表中新增一行。

Arguments

ParentName
一个有效的字符串表达式,提供新维度成员父名称,除非维度成员是在根节点创建的。

成员名称
一个有效的字符串表达式,提供成员名。

Key_Value
一个有效的标量表达式,定义了新维度成员的键值。

Property_Name
一个有效的多维表达式(MDX)标识符,代表成员属性。

Property_Value
一个有效的多维表达式(MDX)标量表达式,定义计算出的成员属性的值。

丢弃维度成员

从支持写入的维度中丢弃维度成员会删除该成员及其对应的行,从底层维度表中删除。

Arguments

Cube_Name
一个有效的字符串表达式,提供一个立方体名。

Member_Name
一个有效的字符串表达式,提供成员名或成员键。

Remarks

如果不使用WITH DESCENDANTS条款,被淘汰成员的子女将成为该成员父母的子女。 如果使用WITH DESCENDANTS子句,维度表中的所有后代及其行也会被删除。

Note

关于去除计算成员、命名集合、动作和单元格计算的信息,请参见 DROP MEMBER 语句(MDX)、DROP Statement(MDX)、DROP SETACTION 语句(MDX)DROP CELL CALCULATION STATEMENT(MDX)。

更新默认维度成员

该子句更新立方体的默认成员,并在MDX计算脚本中用于定义默认成员。 默认成员可以指定为数据库维度、立方体维度,或用户登录。 默认成员也可以在会话中更换。

Arguments

Dimension_Name
一个有效字符串,提供维度名称。

MDX_Expression
一个有效的MDX表达式,返回单个成员。

Remarks

指定的MDX表达式可以是静态的,也可以是动态的。

移动维度成员

底层维度表中的一行被修改。

Arguments

ParentName
一个有效的字符串表达式,提供被移动维度成员新父节点的名称。

成员名称
一个有效的字符串表达式,提供成员名。

Unsigned_整数
一个有效的数字,指定要跳过的关卡数量。

如果指定了WITH DESCENDANTS子句,整个树都会被移动。 如果未指定WITH DESCENDANTS条款,迁移父母的子女将成为迁移成员父母的子女。 移动的效果只是更新底层维度表中父键列的值。

更新维度成员

UPDATE DIMENSION MEMBER 条款允许您修改成员的属性以及与成员关联的自定义成员公式。

Arguments

成员名称
一个有效的字符串表达式,提供成员名。

MDX_Expression
一个有效的MDX表达式,返回单个成员。

Property_Value
一个有效的MDX标量表达式,定义计算出的成员属性的值。

创建单元计算

关于使用ALTER CUBE语句创建单元计算的更多信息,请参见DROP CELL CALCULATION Statement(MDX)。

另请参阅

MDX数据定义语句(MDX)