sql >> Databasteknik >  >> RDS >> Sqlserver

SqlBulkCopy från en lista<>

Med FastMember kan du göra detta utan att behöva gå via DataTable (vilket i mina tester mer än fördubblar prestandan):

using(var bcp = new SqlBulkCopy(connection))
using(var reader = ObjectReader.Create(data, "Id", "Name", "Description"))
{
    bcp.DestinationTableName = "SomeTable";
    bcp.WriteToServer(reader);
}

Observera att ObjectReader kan också fungera med icke-generiska källor, och det är inte nödvändigt att ange medlemsnamnen i förväg (även om du förmodligen vill använda ColumnMappings aspekt av SqlBulkCopy om du inte anger dem i ObjectReader själv).



  1. PostgreSQL:Ge alla behörigheter till en användare på en PostgreSQL-databas

  2. Hur exporterar man all data från tabell till ett insättningsbart sql-format?

  3. Returnera icke-numeriska värden från en PostgreSQL-databaskolumn

  4. Installera Oracle Forms and Reports 11g version 2