BULK INSERT
一連の個別のINSERT
として機能します ステートメント、したがって、ジョブが失敗した場合、コミットされた挿入のすべてがロールバックされるわけではありません。
ただし、トランザクション内に配置できるため、次のようなことができます。
BEGIN TRANSACTION
BEGIN TRY
BULK INSERT OurTable
FROM 'c:\OurTable.txt'
WITH (CODEPAGE = 'RAW', DATAFILETYPE = 'char', FIELDTERMINATOR = '\t',
ROWS_PER_BATCH = 10000, TABLOCK)
COMMIT TRANSACTION
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
END CATCH