SqlServer BCPはすべてかどうかですか?

bcp c# sqlbulkcopy sql-server

質問

.NET SqlBulkCopy APIに依存する重要なコードがいくつかあります。場合によっては、このコードは次のエラーで失敗します。

System.Data.SqlClient.SqlException :挿入バルクは、ターゲットテーブルのスキーマ変更のため失敗しました。

このブログ記事は、一時的な、ほぼ予防不可能なエラーであることを示唆しています。私は、このエラーが発生したときに、行が挿入されていないことを保証しているのだろうかと疑問に思っています(この例外を受け取り、.NET側でBCP操作を再試行できます)。

私はSqlServer 2008を使用しています。

人気のある回答

あなたは使用する必要がありますSqlBulkCopy Constructor (SqlConnection, SqlBulkCopyOptions, SqlTransaction)のためのパラメータを取るコンストラクタ、 SqlTransaction 。そのSqlTransactionインスタンスの下で一括コピーは操作を実行し、失敗した場合はロールバックするオプションがあります。

また、 トランザクションと一括コピー操作も表示されます。

一括コピー操作は、単独操作として実行することも、複数ステップトランザクションの一部として実行することもできます。この後者のオプションを使用すると、同じトランザクション内で複数の一括コピー操作を実行したり、トランザクション全体をコミットまたはロールバックしたりできる間に他のデータベース操作(挿入、更新、および削除など) を実行できます。



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ