매우 간단한 구조 - 외래 키가 1 대 다수 인 상위 자식입니다. 그때 삭제 Entity Framework에서 고유 인덱스를 추가하면 데이터 테이블이 작동하지 않습니다.
:이 오류를 발생
CreateIndex("dbo.Fixtures", new[] { "MarketId", "BookName", "CoupName" }, unique: true, name: "IX_UniqueFixture");
을 이후 나는 새 레코드를 입력 할 때 :
는잘 작동했지만, 난 그래서 복합 고유 인덱스를 추가하여 고유성을하고 싶어 새로 추가 된 색인은 색인이 추가 된 후에 추가 된 레코드를 삭제하고 색인 추가 이전의 레코드를 표시하는 데 사용됩니다. 오류 메시지가 아래에 표시
레코드의 추가 이전에 존재했던 기록이다 : 나는이 같은 오류로 복귀 새 레코드로 데이터베이스를 업데이트 다시 시도하지만
, 앞서 언급 한 지수.
는지금되도록 부모 룩업 테이블 ID 열 시드 후 - 그것은 는
가서 다시 한번 허용 (RESEED는 7 'ExchangeTypes')USE [aspnet-Arb-20160906102730]
가
DBCC CHECKIDENT 이동 작동 나 새 레코드
그래서에 추가하기 짧게는 레코드의 표시를 허용하기 위해 고유 한 복합 인덱스를 추가하여 데이터 테이블을 망쳐 놓은 것을 복구 할 수있었습니다.
그러나이 문제가 발생하는 이유는 내가 당황 스럽습니다. 그리고 저는 여전히 고유성을 강화하고 싶습니다. 아마 3 필드를 하나의 필드로 연결해보고 여러 필드가 아닌 단일 필드의 인덱스로 독창성을 강화하고 데이터 테이블 표시를 방해하지 않는지 확인할 수 있는지 확인합니다.
EDIT : 고유 한 필드의 색인으로 시도했지만 여전히 동일한 오류가 발생합니다. 재미있는 부모 조회 필드에 고유 인덱스를 적용해도 데이터 테이블은 작동하지 않지만 자식 테이블에서 동일하게 시도하는 것은 불가능합니다.