다음을 통해 공유


CONSTRAINT_CONFLICT_REASON 열거형

제약 조건 충돌이 발생할 수 있는 원인을 나타냅니다.

typedef enum
{
  CCR_OTHER,
  CCR_COLLISION,
  CCR_NOPARENT,
  CCR_IDENTITY
} CONSTRAINT_CONFLICT_REASON;

멤버

항목

정의

CCR_OTHER

항목 또는 변경 단위가 대상 복제본의 다른 제약 조건을 위반합니다. 필요에 따라 공급자는 충돌 항목의 ID를 충돌 항목 ID로 지정할 수 있습니다.

CCR_COLLISION

기존 항목과 이름이 같은 항목의 경우와 같이 저장소의 다른 항목과 충돌하여 항목을 저장할 수 없습니다. 공급자는 대상 항목의 ID를 충돌 항목 ID로 지정해야 합니다.

CCR_NOPARENT

항목에 필요한 부모 항목이 저장소에 없으므로 해당 항목을 계층적 데이터 저장소에 저장할 수 없습니다. 필요에 따라 공급자는 없는 부모 항목의 ID를 충돌 항목 ID로 지정할 수 있습니다.

CCR_IDENTITY

원본 복제본과 대상 복제본의 항목 ID가 일치하지 않습니다. 예를 들어 복제본 X는 ID가 각각 id1과 id2인 항목을 병합한 후 병합된 항목에 id1을 할당하여 두 항목 간의 중복 충돌을 해결합니다. 반면에 복제본 Y는 ID가 각각 id1과 id2인 항목에 대해 id1로 식별된 항목의 이름을 바꾸고 두 항목을 모두 유지하여 항목 간의 중복 충돌을 해결합니다. 복제본 X는 id1로 식별되는 병합된 항목과 id2가 id1에 병합되었음을 나타내는 병합 삭제 표식을 보냅니다. 이제 id1에서 충돌이 검색된 후 동시성 충돌로 해결되고, id2에서 충돌이 검색된 후 충돌 원인을 CCR_IDENTITY로 지정하여 동기화 응용 프로그램에 ID 충돌로 보고됩니다. 그러면 응용 프로그램에서 충돌을 해결할 때 원본 변경 내용을 유지할지 아니면 대상 변경 내용을 유지할지를 결정합니다.

주의

대상 공급자는 변경 내용 적용자에 제약 조건 충돌을 보고할 때 CONSTRAINT_CONFLICT_REASON의 멤버를 사용하여 제약 조건 충돌 원인을 지정합니다. 제약 조건 충돌에 대한 자세한 내용은 제약 조건 충돌 검색 및 해결을 참조하십시오.

요구 사항

헤더: Synchronization.h

참고 항목

개념

Sync Framework 핵심 구성 요소