다음을 통해 공유


IRowsetFastLoad::Commit(OLE DB)

적용 대상: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

OLE DB 드라이버 다운로드

삽입된 행 일괄 처리의 끝을 표시하고 SQL Server 테이블에 행을 씁니다. 샘플은 IRowsetFastLoad를 사용한 데이터 대량 복사(OLE DB)IROWSETFASTLOAD 및 ISEQUENTIALSTREAM을 사용하여 SQL SERVER로 BLOB 데이터 전송(OLE DB)을 참조하세요.

구문

  
HRESULT Commit(  
      BOOL fDone);  

인수

fDone[in]
FALSE인 경우 행 집합은 유효성을 유지하며 소비자가 추가 행 삽입에 사용할 수 있습니다. TRUE이면 행 집합이 유효하지 않으며 소비자가 더 이상 삽입할 수 없습니다.

반환 코드 값

S_OK
메서드가 성공했고 삽입된 모든 데이터가 SQL Server 테이블에 기록되었습니다.

E_FAIL
공급자별 오류가 발생했습니다. 오류 정보에서 공급자 관련 오류 텍스트를 검색하십시오.

E_UNEXPECTED
이 메서드는 이전에 IRowsetFastLoad::Commit 메서드에 의해 무효화된 대량 복사 행 집합에서 호출되었습니다.

설명

OLE DB Driver for SQL Server 대량 복사 행 집합은 지연 업데이트 모드 행 집합으로 작동합니다. 사용자가 행 집합을 통해 행 데이터를 삽입할 때 삽입된 행은 IRowsetUpdate를 지원하는 행 집합의 보류 중인 삽입과 동일한 방식으로 처리됩니다.

소비자는 IRowsetUpdate::Update 메서드를 사용하여 보류 중인 행을 SQL Server 인스턴스에 제출하는 것과 같은 방식으로 삽입된 행을 SQL Server 테이블에 쓰려면 대량 복사 행 집합의 Commit 메서드를 호출해야 합니다.

소비자가 Commit 메서드를 호출하지 않고 대량 복사 행 집합에 대한 참조를 해제하면 기존에 쓰지 않은 삽입된 행이 모두 손실됩니다.

소비자는 fDone 인수가 FALSE로 설정된 Commit 메서드를 호출하여 삽입된 행을 일괄 처리할 수 있습니다. fDone을 TRUE로 설정하면 행 집합이 무효화됩니다. 잘못된 대량 복사 행 집합은 ISupportErrorInfo 인터페이스 및 IRowsetFastLoad::Release 메서드만 지원합니다.

참고 항목

IRowsetFastLoad(OLE DB)