Carga masiva de datos con SqlBulkCopy en SQL Server desde APS.NET

SqlBulkCopy es una clase, que pertenece al espacio de nombres System.Data.SqlCliente, que permite hacer una carga masiva de datos en una tabla de SQL Server desde otro origen de datos (access, excel, oracle … etc …). Actualizado 12.03.2011

El método es muy sencillo de utilizar desde un datatable que se tenga almacenada la informacion podemos cargar directamente en una tabla de SQL Server todos los datos, sin necesidad de recorrer en un bucle el DataTable.
El código es el siguiente:

string ConnectionString = “Server=SQL2005;Database=BBDD;Uid=sa;Pwd=;”;

using (SqlBulkCopy bulkcopy = new SqlBulkCopy(ConnectionString)
{
  bulkcopy.DestinationTableName = “dbo.Facturas”;
  try
  {
   bulkcopy.WriteToServer(MyDataTable);
  }
  catch (Exception ex)
  {
   if (startVisualMap.consola) {
    Console.WriteLine(ex.Message + ” ” + MyDataTable);
   }
  }

}

En el método DestinationTableName especificamos la tabla que vamos a llenar.

Con el método WriteToServer escribimos en la tabla los datos del DataTable.

Y con este método tan sencilla podemos grabar grandes cantidades de datos sin esfuerzo.

Y esto es todo, feliz programming!!
Saludos
Alex.

Comments

7 Responses to “Carga masiva de datos con SqlBulkCopy en SQL Server desde APS.NET”
  1. Paola dice:

    Hola, esta excelente tu articulo, muchas gracias, me sirvio de maravilla.

  2. Edgar dice:

    Tenia dos dias buscando esta información, mañana lo estoy probando, espero funcione!!!

  3. evy dice:

    excellent!!!

  4. Anónimo dice:

    muy bueno!!!

  5. arnaldo dice:

    le falta un parentesis al using

  6. ARNALDO dice:

    confundiste propiedad con método para DestinationTableName y no muestras como crear el objeto server

  7. Fann_Lavigne dice:

    wow!!” excelente, pero kreo ke solo esta disponible desde la version 2005 del visual estudio no es asi? pero aun asi es super util!! saludos!!

Comenta el artículo