다음을 통해 공유


ALTER CUBE 문(MDX)

일반적으로 차원 쓰기 지원에 사용되는 지정한 큐브의 구조를 변경합니다. 응용 프로그램에서 쓰기 사용에 대한 자세한 내용은 블로그 포스트: Analysis Services로 쓰기 응용 프로그램 빌드(블로그)를 참조하십시오.

두 번째 쓰기로 유지되는 공유 잠금으로 인해 첫 번째 쓰기가 커밋에서 차단되므로 동시 차원 쓰기로 인해 교착 상태가 발생할 수 있습니다. 이 상황에서 발생하는 오류는 없지만 어떠한 작업도 진행할 수 없습니다. 결국 제한 시간 및 변경 내용이 모두 롤백됩니다.

구문

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
    단일 멤버를 반환하는 유효한 MDX 식입니다.

설명

지정된 MDX 식은 정적이거나 동적일 수 있습니다.

차원 멤버 이동

기본 차원 테이블에서 행을 수정합니다.

인수

  • ParentName
    이동할 차원 멤버의 새 부모 이름을 지정하는 유효한 문자열 식입니다.

  • MemberName
    멤버 이름을 지정하는 유효한 문자열 식입니다.

  • Unsigned_Integer
    건너뛸 수준 수를 지정하는 유효한 숫자입니다.

WITH DESCENDANTS 절이 지정된 경우 트리 전체가 이동됩니다. WITH DESCENDANTS 절이 지정되지 않은 경우 이동된 부모의 자식은 이동된 멤버의 부모의 자식이 됩니다. 차원 멤버를 이동하면 단순히 기본 차원 테이블에 있는 부모 키 열의 값이 업데이트됩니다.

차원 멤버 업데이트

UPDATE DIMENSION MEMBER 절을 사용하면 멤버의 속성뿐 아니라 멤버와 관련된 사용자 지정 멤버 수식도 수정할 수 있습니다.

인수

  • MemberName
    멤버 이름을 지정하는 유효한 문자열 식입니다.

  • MDX_Expression
    단일 멤버를 반환하는 유효한 MDX 식입니다.

  • Property_Value
    계산 멤버 속성의 값을 정의하는 유효한 MDX 스칼라 식입니다.

셀 계산 만들기

ALTER CUBE 문을 사용하여 셀 계산을 만드는 방법은 DROP CELL CALCULATION 문(MDX)을 참조하십시오.

참고 항목

관련 자료

MDX 데이터 정의 문(MDX)