超時已過期SqlBulkCopy

.net asp.net sql sqlbulkcopy sql-server

我正在使用SqlBulkCopy從xml備份中恢復表。其中一個表備份大約200MB,並且有很多記錄。

我有錯誤:

Timeout expired.
The timeout period elapsed prior to completion of the operation or the server
is not responding.

一般承認的答案

您可能需要增加超時。嘗試從默認值30秒增加sqlBulkCopy.BulkCopyTimeout的值。


熱門答案

有兩種方法可以解決此錯誤:

  • 默認情況下,增加超時為30秒,0表示無限。

       sqlBulkCopy.BulkCopyTimeout = {time in seconds}
    
  • 默認情況下,減少BatchSize會嘗試在一個批處理中插入所有行

        sqlBulkCopy.BatchSize  = {no of rows you want to insert at once}
    

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy.batchsize.aspx http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy .bulkcopytimeout.aspx



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow