Sdílet prostřednictvím


SqlBulkCopy.BatchSize Vlastnost

Definice

Počet řádků v každé dávce Na konci každé dávky se řádky v dávce odešlou na server.

public:
 property int BatchSize { int get(); void set(int value); };
public int BatchSize { get; set; }
member this.BatchSize : int with get, set
Public Property BatchSize As Integer

Hodnota vlastnosti

Celočíselná hodnota BatchSize vlastnosti nebo nula, pokud nebyla nastavena žádná hodnota.

Příklady

Následující konzolová aplikace ukazuje, jak hromadně načítat data v dávkách po 50 řádcích. Příklad ilustrující, jak BatchSize funguje s transakcí, najdete v tématu Operace transakce a hromadného kopírování.

Důležité

Tato ukázka se nespustí, pokud jste nevytvořili pracovní tabulky, jak je popsáno v části Ukázková instalace hromadného kopírování. Tento kód slouží k předvedení syntaxe pouze pro použití SqlBulkCopy . Pokud jsou zdrojová a cílová tabulka ve stejné SQL Server instanci, je jednodušší a rychlejší použít příkaz jazyka Transact-SQL INSERT … SELECT ke kopírování dat.

Poznámky

Dávka je dokončena, když BatchSize byly zpracovány řádky nebo neexistují žádné další řádky k odeslání do cílového zdroje dat.

Nula (výchozí) označuje, že každá WriteToServer operace je jedna dávka.

SqlBulkCopy Pokud byla instance deklarována bez UseInternalTransaction možnosti v platnosti, jsou řádky odeslány na server BatchSize řádky najednou, ale není provedena žádná akce související s transakcí. Pokud UseInternalTransaction je v platnosti, každá dávka řádků je vložena jako samostatná transakce.

Vlastnost BatchSize lze kdykoli nastavit. Pokud už probíhá hromadné kopírování, má aktuální dávka velikost podle velikosti předchozí dávky. V dalších dávkách se použije nová velikost. BatchSize Pokud je počáteční hodnota nula a změní se v době, kdy WriteToServer operace již probíhá, načte tato operace data jako jednu dávku. Všechny následné WriteToServer operace ve stejné SqlBulkCopy instanci používají novou BatchSize.

Platí pro