SqlBulkCopy.BatchSize Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Liczba wierszy w każdej partii. Na końcu każdej partii wiersze w partii są wysyłane do serwera.
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
Wartość właściwości
Wartość całkowita BatchSize właściwości lub zero, jeśli nie ustawiono żadnej wartości.
Przykłady
Poniższa aplikacja konsolowa pokazuje, jak zbiorczo ładować dane w partiach 50 wierszy. Przykład pokazujący, jak BatchSize działa z transakcją, zobacz Operacje transakcji i kopiowania zbiorczego.
Ważne
Ten przykład nie zostanie uruchomiony, chyba że tabele robocze zostały utworzone zgodnie z opisem w temacie Konfiguracja przykładu kopiowania zbiorczego.
Ten kod jest dostarczany w celu zademonstrowania składni tylko przy użyciu narzędzia SqlBulkCopy . Jeśli tabele źródłowe i docelowe znajdują się w tym samym wystąpieniu SQL Server, łatwiej i szybciej używać instrukcji Języka Transact-SQL INSERT … SELECT
do kopiowania danych.
Uwagi
Partia jest kompletna, gdy BatchSize wiersze zostały przetworzone lub nie ma więcej wierszy do wysłania do docelowego źródła danych.
Zero (wartość domyślna) wskazuje, że każda WriteToServer operacja jest pojedynczą partią.
SqlBulkCopy Jeśli wystąpienie zostało zadeklarowane bez UseInternalTransaction opcji, wiersze są wysyłane do wierszy serwera BatchSize w danym momencie, ale nie zostanie podjęta żadna akcja związana z transakcją. Jeśli UseInternalTransaction jest w życie, każda partia wierszy jest wstawiana jako osobna transakcja.
Właściwość BatchSize można ustawić w dowolnym momencie. Jeśli kopia zbiorcza jest już w toku, bieżąca partia ma rozmiar zgodnie z poprzednim rozmiarem partii. Kolejne partie używają nowego rozmiaru. BatchSize Jeśli wartość jest początkowo zero i zmieniana, gdy WriteToServer operacja jest już w toku, operacja ładuje dane jako pojedynczą partię. Wszystkie kolejne WriteToServer operacje na tym samym SqlBulkCopy wystąpieniu używają nowego BatchSizepolecenia .