Datatbale을 사용하여 SQL 서버 테이블 업데이트

c# datatable sqlbulkcopy

문제

나는 메모리 테이블 (DataTable)에서 DataTable을 한 번에 (대량 업데이트) 사용하여 SQL 테이블을 업데이트하려고합니다. DataTable에서 SQL 테이블로 데이터를 대량 삽입하는 방법을 알고 있습니다. 일괄 업데이트 할 수있는 방법이 있습니까?

수락 된 답변

EDITED : 원래 질문을 잘못 읽었습니다. 다음은 "일괄 업데이트"입니다.

UPDATE <table> SET tbl.value = dt.value
    FROM @Datatable dt
    INNER JOIN <table> tbl ON tbl.<id_column> = dt.<id_column>

인기 답변

MS 엔터프라이즈 라이브러리 데이터 블록의 UpdateDataSet () 메소드 중 하나를 사용할 수 있습니다.

이들은 각 행의 rowstate (add, update, delete)를 읽고 UpdateDataSet () 메소드에서 명명 된 명령을 실행합니다. 합리적인 데이터베이스 서버를 사용하면 몇 초 내에 수천 개의 레코드를 처리 할 수 ​​있습니다.

필자가 발견 한 단점은 새로 삽입 된 IDENTITY 값을 반환 할 수는 없지만 삽입이 완료된 후 데이터베이스에서 선택하여 데이터 테이블에 다시 매핑 할 수 있다는 것입니다.



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