IGNORE_DUP_KEY = ON으로 복제 삽입시 PK에 대한 자동 증가 없음

entity-framework sqlbulkcopy sql-server

문제

IGNORE_DUP_KEY = ON으로 설정하여 많은 양의 데이터를 삽입하려고 할 때 경고가 표시되지 않습니다. 그러나 기본 키는 각 중복 행마다 증가하므로 서로 뒤 이은 중복 행이 20 개있을 때 ID 100에서 120으로 갈 수 있습니다. 수동으로 값을 설정하지 않고 101에서 계속할 수있는 방법이 있습니까? SqlBulkCopy 및 Entity Framework를 사용하고 있는데이 문제 (예 : NOT EXISTS 사용)에 대한 SQL 쿼리에 관심이 없습니다. 물론 레코드가 이미 존재하는지 먼저 확인할 수 있지만 성능상의 이유로 레코드를 선호하지는 않습니다.

수락 된 답변

연속 ID 값이 필요한 경우 IDENTITY 는 사용할 수 없습니다. 신원 값이 누락 될 수 없다는 보장은 전혀 없습니다. 이 시나리오가 유일한 시나리오는 아닙니다.

ID를 직접 관리하거나 (예 : 시퀀스를 사용하여 대량로드에 통합하기가 쉽지 않음) 중단되지 않은 ID가 필요하다는 것을 포기하십시오.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.