멤버 삽입, 업데이트 및 삭제(XMLA)

XMLA(XML for Analysis)의 삽입, 업데이트삭제 명령을 사용하여 쓰기 사용 차원의 멤버를 각각 삽입, 업데이트 또는 삭제할 수 있습니다. 쓰기 사용 차원에 대한 자세한 내용은 쓰기 사용 차원을 참조하세요.

새 멤버 삽입

Insert 명령은 쓰기 사용 차원의 지정된 특성에 새 멤버를 삽입합니다.

Insert 명령을 생성하기 전에 새 멤버를 삽입할 수 있는 다음 정보가 있어야 합니다.

  • 새 멤버를 삽입할 차원.

  • 새 멤버를 삽입할 차원 특성.

  • 이름의 적용할 수 있는 번역을 포함한 새 멤버의 이름.

  • 새 멤버의 키. 특성이 복합 키를 사용하는 경우 이 키에는 값이 여러 개 필요할 수 있습니다.

  • 차원 내에서 다른 특성으로 구현되지 않은 적용 가능한 모든 특성 속성의 값. 이러한 특성 속성에는 단항 연산, 번역, 사용자 지정 롤업, 사용자 지정 롤업 속성 및 건너뛴 수준이 있습니다.

Insert 명령은 다음 두 가지 속성만 사용합니다.

  • 멤버를 삽입할 차원에 대한 개체 참조를 포함하는 Object 속성입니다. 개체 참조는 차원에 대한 데이터베이스 식별자, 큐브 식별자 및 차원 식별자를 포함합니다.

  • 멤버를 삽입할 특성을 식별하기 위해 하나 이상의 특성 요소가 포함된 Attributes 속성입니다. 각 Attribute 요소는 특성을 식별하고 식별된 특성에 추가할 단일 멤버에 대한 이름, 값, 번역, 단항 연산자, 사용자 지정 롤업, 사용자 지정 롤업 속성 및 건너뛴 수준을 제공합니다.

    참고

    Attribute 요소에 대한 모든 속성을 포함해야 합니다. 그렇지 않으면 오류가 발생할 수 있습니다.

기존 멤버 업데이트

Update 명령은 다른 특성의 다른 멤버와의 관계를 기반으로 쓰기 사용 차원으로 지정된 특성의 기존 멤버를 업데이트합니다. 업데이트 명령은 차원에 포함된 계층의 다른 수준으로 멤버를 이동할 수 있으며 부모 특성에 정의된 부모-자식 계층 구조를 재구성하는 데 사용할 수 있습니다.

업데이트 명령을 생성하기 전에 멤버를 업데이트할 수 있는 다음 정보가 있어야 합니다.

  • 기존 멤버를 업데이트할 차원.

  • 기존 멤버를 업데이트할 차원 특성.

  • 기존 멤버의 키. 특성이 복합 키를 사용하는 경우 이 키에는 값이 여러 개 필요할 수 있습니다.

  • 차원 내에서 다른 특성으로 구현되지 않은 적용 가능한 모든 특성 속성의 값. 이러한 특성 속성에는 단항 연산, 번역, 사용자 지정 롤업, 사용자 지정 롤업 속성 및 건너뛴 수준이 있습니다.

Update 명령은 다음 세 가지 필수 속성만 사용합니다.

  • 멤버를 업데이트할 차원에 대한 개체 참조를 포함하는 Object 속성입니다. 개체 참조는 차원에 대한 데이터베이스 식별자, 큐브 식별자 및 차원 식별자를 포함합니다.

  • 멤버를 업데이트할 특성을 식별하기 위해 하나 이상의 특성 요소가 포함된 Attributes 속성입니다. Attribute 요소는 특성을 식별하고 식별된 특성에 대해 업데이트된 단일 멤버에 대한 이름, 값, 번역, 단항 연산자, 사용자 지정 롤업, 사용자 지정 롤업 속성 및 건너뛴 수준을 제공합니다.

    참고

    Attribute 요소에 대한 모든 속성을 포함해야 합니다. 그렇지 않으면 오류가 발생할 수 있습니다.

  • 멤버를 업데이트할 특성을 제한하는 하나 이상의 특성 요소가 포함된 Where 속성입니다. Where 속성은 Update 명령을 멤버의 특정 인스턴스로 제한하는 데 중요합니다. Where 속성을 지정하지 않으면 지정된 멤버의 모든 인스턴스가 업데이트됩니다. 예를 들어, 세 명의 고객에 대한 도시 이름을 Redmond에서 Bellevue로 변경하려고 합니다. 도시 이름을 변경하려면 City 특성의 멤버를 변경해야 하는 Customer 특성의 세 멤버를 식별하는 Where 속성을 제공해야 합니다. 이 Where 속성을 제공하지 않으면 현재 도시 이름이 Redmond인 모든 고객은 업데이트 명령이 실행된 후 Bellevue의 도시 이름을 갖게 됩니다.

    참고

    새 멤버를 제외하고 Update 명령은 Where 절에 포함되지 않은 특성의 특성 키 값만 업데이트할 수 있습니다. 예를 들어, 고객을 업데이트하는 경우 도시 이름을 업데이트할 수 없습니다. 이렇게 하지 않으면 모든 고객의 도시 이름이 변경됩니다.

부모 특성의 멤버 업데이트

부모 특성을 지원하기 위해 Update 명령은 선택적 MoveWithDescendantsMovewithDescedants 속성입니다. MoveWithDescendants 속성을 true로 설정하면 부모 멤버의 식별자가 변경될 때 부모 멤버의 하위 항목도 부모 멤버와 함께 이동되어야 함을 나타냅니다. 이 값을 false로 설정한 경우 부모 멤버를 이동하면 해당 부모 멤버의 직계 하위 항목이 부모 멤버의 이전 수준으로 승격됩니다.

부모 특성의 멤버를 업데이트할 때 Update 명령은 다른 특성의 멤버를 업데이트할 수 없습니다.

기존 멤버 삭제

Drop 명령을 생성하기 전에 멤버를 삭제할 수 있는 다음 정보가 있어야 합니다.

  • 기존 멤버를 삭제할 차원.

  • 기존 멤버를 삭제할 차원 특성.

  • 삭제할 기존 멤버의 키. 특성이 복합 키를 사용하는 경우 이 키에는 값이 여러 개 필요할 수 있습니다.

Drop 명령은 다음 두 개의 필수 속성만 사용합니다.

  • 멤버를 삭제할 차원에 대한 개체 참조를 포함하는 Object 속성입니다. 개체 참조는 차원에 대한 데이터베이스 식별자, 큐브 식별자 및 차원 식별자를 포함합니다.

  • 멤버를 삭제할 특성을 제한하기 위해 하나 이상의 특성 요소가 포함된 Where 속성입니다. Where 속성은 Drop 명령을 멤버의 특정 인스턴스로 제한하는 데 중요합니다. Where 명령을 지정하지 않으면 지정된 멤버의 모든 인스턴스가 삭제됩니다. 예를 들어, Redmond의 고객 세 명을 삭제하려고 합니다. 이러한 고객을 삭제하려면 제거할 Customer 특성의 세 멤버와 세 고객을 제거할 City 특성의 Redmond 멤버를 식별하는 Where 속성을 제공해야 합니다. Where 속성이 City 특성의 Redmond 멤버만 지정하는 경우 Drop 명령에 의해 Redmond와 연결된 모든 고객이 삭제됩니다. Where 속성이 Customer 특성의 세 멤버만 지정하는 경우 Drop 명령에 의해 세 고객이 완전히 삭제됩니다.

    참고

    Drop 명령에 포함된 특성 요소는 AttributeName 속성만 포함해야 합니다. 그렇지 않으면 오류가 발생할 수 있습니다.

부모 특성의 멤버 삭제

DeleteWithDescendants 속성을 설정하면 부모 멤버의 하위 항목도 부모 멤버와 함께 삭제되어야 합니다. 이 값을 false로 설정한 경우에는 부모 멤버의 직계 하위 항목이 부모 멤버의 이전 수준으로 승격됩니다.

중요

부모 멤버와 해당 하위 항목을 모두 삭제하려면 부모 멤버에 대한 삭제 권한만 있으면 됩니다. 하위 항목에 대한 삭제 권한은 필요하지 않습니다.

참고 항목

Drop 요소(XMLA)
Insert 요소(XMLA)
Update 요소(XMLA)
개체 정의 및 식별(XMLA)
Analysis Services에서 XMLA를 사용하여 개발