토토 사이트SQL 시행 사용 토토 사이트 제약 조건토토 사이트 한 인덱스, 여러 항목을 허용하지 않는 인덱스입니다 동일한 키로. 이 기능을 지원하는 액세스 방법 세트PG_AM.Amcanuniquetrue. (현재, B- 트리 만 지원합니다.)
MVCC 때문에 항상 복제를 허용해야합니다. 인덱스에 물리적으로 존재하는 항목 : 항목이 참조 할 수 있습니다. 단일 논리 행의 연속 버전으로. 우리의 행동 실제로 MVCC 스냅 샷이 포함 할 수 없다는 것입니다. 동일한 인덱스 키가있는 두 행. 이것은로 분해됩니다 새 행을 삽입 할 때 확인 해야하는 다음 사례 독특한 색인으로 :
현재에 의해 충돌하는 유효한 행이 삭제 된 경우 거래, 괜찮습니다. (특히 업데이트 이후 새로운 삽입 전에 항상 이전 행 버전을 삭제합니다. 버전, 이것은 변경하지 않고 행에 업데이트 할 수 있습니다. 열쇠.)
충돌 행을 삽입 한 경우 커뮤니케이션이 제대로 삽입되어야합니다 그 거래가 유발되는지 기다리십시오. 그것이 롤백된다면 그러면 갈등이 없습니다. 삭제하지 않고 커밋되는 경우 다시 충돌하면 독창성 위반이 있습니다. (안에 우리는 다른 거래가 끝날 때까지 기다리고 그런 다음 가시성 검사를 다시 실행하십시오.)
마찬가지로, 충돌하는 유효한 행이 삭제 된 경우 그 대신 커미셔닝 된 트랜잭션 인 삽입자는 삽입해야합니다 그 거래가 커밋하거나 중단 될 때까지 기다린 다음 반복합니다. 테스트.
또한 독창성 위반을 제기하기 직전에 위 규칙에 따라 액세스 방법은 행의 라이성은 삽입되고 있습니다. 그것이 죽었다면 오류가 발생하지 않아야합니다. (이 경우에는 발생할 수 없습니다 방금 만들어진 행을 삽입하는 일반적인 시나리오 현재 거래. 발생할 수 있습니다동시에 토토 사이트 인덱스 생성, 그러나)
이 테스트를 적용하려면 인덱스 액세스 방법이 필요합니다. 그 자체는 중복 키가있는 것으로 표시된 모든 행의 상태 커밋 상태 인덱스 내용에 따라. 이것은 의심 할 여지없이 추악합니다 비 모성이지만 중복 작업을 저장합니다. 그런 다음 절충 행에 대한 인덱스 검색이 새로운 삽입 장소를 찾는 동안 본질적으로 반복 행의 인덱스 항목. 더구나, 피해야 할 분명한 방법은 없습니다 충돌 점검이 없어서는 안될 인종 조건 새로운 인덱스 항목 삽입.
이 체계의 주요 제한은 없다는 것입니다. 지연된 독창성 점검을 지원하는 편리한 방법.