sql >> Databasteknik >  >> RDS >> Sqlserver

Prestanda för bcp/BULK INSERT kontra tabellvärderade parametrar

Jag har inte riktigt erfarenhet av TVP än, men det finns ett trevligt diagram för prestandajämförelse vs. BULK INSERT i MSDN här .

De säger att BULK INSERT har högre startkostnad, men är snabbare därefter. I ett fjärrklientscenario drar de linjen vid cirka 1000 rader (för "enkel" serverlogik). Att döma av deras beskrivning skulle jag säga att du borde klara dig med att använda TVP. Prestandaträffen - om någon - är förmodligen försumbar och de arkitektoniska fördelarna verkar mycket goda.

Redigera:Som en sidoanteckning kan du undvika den serverlokala filen och fortfarande använda bulkkopiering genom att använda SqlBulkCopy-objektet. Fyll bara i en datatabell och mata in den i "WriteToServer"-metoden för en SqlBulkCopy-instans. Lätt att använda och mycket snabb.



  1. Hur GREATEST() fungerar i MariaDB

  2. Vill du avbryta väntande AJAX-förfrågningar i PHP-appen?

  3. PHP OCI, Oracle och standardnummerformat

  4. Hur man skapar ett alias för en databas i SQL Server