SqlBulkCopyOptions.CheckConstraints 옵션이 SqlBulkCopy 삽입에 대해 설정된 경우 각 레코드 다음에 제약 조건을 개별적으로 확인합니까 아니면 모든 레코드가 삽입 된 후에?SqlBulkCopy는 어떤 단계에서 제약 조건을 확인합니까?
일부 열을 상위 행 (UDF를 통해)과 비교하는 점검 제한 조건이 있습니다. MS SQL Server 2005를 사용하고 있습니다. http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopyoptions.aspx의 설명서에는 "데이터를 삽입하는 동안 제약 조건을 확인하십시오."라는 메시지 만 표시됩니다.
내 테스트에서는 외래 키가 끝날 때까지 검사되지 않는 것 같지만 다음 제약 조건을 추가하기 전에 검사 제약 조건이 각 행에 대해 확인 된 것 같습니다. 이것은 아주 이상하게 들린다. 이에 관한 문서를 찾지 못했습니다.
각 행에 대해 UDF가 실행되고 성능이 저하됩니다! –
SQL 프로파일 러를 사용하여 대답을 결정했습니다. 아마도 FK는 처음에는 사용이 중지되고 마지막에 적용됩니다. –