SqlBulkCopy塊拷貝數據時,不履行觸發器和束縛 解決辦法

在new SqlBulkCopy時,設置SqlBulkCopyOptions屬性即可

SqlBulkCopy bulkCopy = new SqlBulkCopy(ConStr,SqlBulkCopyOptions.FireTriggers);

注意:函數重載問題:SqlBulkCopy一個參數時,第一個參數是sqlconnection,兩個參數時第一個參數是sqlconnectionString.

SqlBulkCopyOptions屬性:

  Default 對所有選項使用默認值。
  KeepIdentity 保留源標識值。如果未指定,則由目標分配標識值。
  CheckConstraints 請在插入數據的同時檢查約束。默認情況下,不檢查約束。
  TableLock 在批量複製操作期間獲取批量更新鎖。如果未指定,則使用行鎖。
  KeepNulls 保留目標表中的空值,而不管默認值的設置如何。如果未指定,則空值將由默認值替換(如果適用)。
  FireTriggers 指定後,會導致服務器爲插入到數據庫中的行激發插入觸發器。
  UseInternalTransaction 如果已指定,則每一批批量複製操作將在事務中發生。如果指示了此選項,並且爲構造函數提供了 SqlTransaction 對象,則發生 ArgumentException。
————————————————
版權聲明:本文爲CSDN博主「ghostbill」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/ghostbill/article/details/8190110

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章