대량 복사를위한 롤백

bcp c# rollback sqlbulkcopy sql-server

문제

나는 C에서 대량 복사 클래스에 의해 내 데이터베이스에서 복사본을 만드는 응용 프로그램이 #.

예외가 발생하면 SQL Server에서 대량 복사 작업을 롤백 할 수 있습니까?

수락 된 답변

MSDN 문서 : 트랜잭션에서 대량 복사 작업 수행 또는 최신 문서 : 트랜잭션 및 대량 복사 작업 | Microsoft 문서 도구

using (SqlTransaction transaction = destinationConnection.BeginTransaction())
{
    using (SqlBulkCopy bulkCopy = new SqlBulkCopy( destinationConnection, SqlBulkCopyOptions.KeepIdentity, transaction))
    {
        bulkCopy.BatchSize = 10;
        bulkCopy.DestinationTableName = "dbo.BulkCopyDemoMatchingColumns";

        try
        {
            bulkCopy.WriteToServer(reader);
            transaction.Commit();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
            transaction.Rollback();
        }
        finally
        {
            reader.Close();
        }
    }
}


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