2014-06-12 2 views
0

데이터베이스에 레코드가 있는지 여부에 따라 SQL DB에 삽입하거나 업데이트해야하는 레코드 목록이 있습니다.SQLBUlkCopy는 StoredProcedure를 호출하여 SQLDb에 데이터를 삽입하거나 업데이트합니다.

현재 흐름은 각 레코드를 1로 처리 한 다음 데이터베이스 삽입 또는 업데이트 작업을 수행하는 C# 코드에서 저장 프로 시저를 호출합니다.

위의 프로세스는 매우 비효율적입니다. SQL Bulk Copy를 사용하여 SQLDb에 한 번에 삽입 할 수 있습니까?

성능이 향상됩니다.

감사 Ankur은

답변

2

SqlBulkCopy에만 삽입 할 수 있습니다. upsert해야하는 경우 (주 모델의 일부가 아닌 별도의 테이블)에 SqlBulkCopy을 넣은 다음 TSQL에서 병합 할 수 있습니다. 동시성 (얼마나 많은 사람들이 동시에 스테이징 테이블을 사용할 수 있는지 등)에 대해 생각할 수도 있습니다.

관련 문제