質問: SqlBulkCopyOptions.CheckConstraintsオプションがSqlBulkCopyの挿入に対して設定されている場合、各レコードの後、またはすべてのレコードが挿入された後で制約を個別にチェックしますか? いくつかの列を(UDFを介して)親行と比較するチェック制約があります。私は、ドキュメントMS SQLサーバー2005を使用していhttp://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopyoptions.aspxが唯一の言う「データが挿入されている間に制約をチェックしてください。」 私のテストでは、外部キーは最後までチェックされていないようですが、チェック制約は各行に対してチェックされてから次のものが追加されます。これはかなり奇妙に聞こえる。私はこれについてのドキュメントは見つかりませんでした。
回答: 私がこれを完全に理解しているかどうかはわかりません。 しかし、それはその場での取引が原因である可能性があります。外部キーの制約がコミット準備ができているかどうか、独立してチェックできる列の制約(ある程度)などがあるかどうかをチェックすることがあります。