Tiempo de espera caducado con SqlBulkCopy

.net asp.net sql sqlbulkcopy sql-server

Pregunta

Estoy usando SqlBulkCopy para restaurar tablas a partir de copias de seguridad xml. Una de las copias de seguridad de la tabla es de aproximadamente 200 MB y tiene muchos registros.

Estoy teniendo error:

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

Respuesta aceptada

Probablemente necesites aumentar el tiempo de espera. Intente aumentar el valor de sqlBulkCopy.BulkCopyTimeout desde el valor predeterminado, que es de 30 segundos.


Respuesta popular

Hay dos formas de corregir este error:

  • Aumentar el tiempo de espera de forma predeterminada es de 30 segundos y 0 significa infinito.

       sqlBulkCopy.BulkCopyTimeout = {time in seconds}
    
  • Disminuir BatchSize por defecto, intenta insertar todas las filas en un lote

        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



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué