IBCPSession::BCPControl (OLE DB)
Służy do ustawiania opcji dla operacji masowego kopiowania.
HRESULT BCPControl(
int eOption,
void *iValue);
Remarks
The BCPControl metoda sets various control parameters for bulk-copy operations including the number of errors allowed before canceling a kopiowanie masowe, the numbers of the first and last rows to copy from a data file, and the partia size.
Ta metoda jest również używana do określenia instrukcja SELECT dla użytku w zbiorczej kopiowania danych się z SQL Server. zestaw eOption argument BCP_OPTION_HINTS i iValue argumentem wskaźnika na ciąg znak dwubajtowy, zawierające instrukcję SELECT.
The BCPControl metoda sets the element członkowski variables of BCP structure to enable the options zestaw by the user.Prawidłowe opcje to:
Opcja |
Description |
---|---|
BCP_OPTION_ABORT |
Zatrzymuje operacją masowego kopiowania, które jest już w toku.Można wywołać BCPControl metoda z eOption argument BCP_OPTION_ABORT z innego wątek, aby zatrzymać operację uruchamianie masowego kopiowania. The iValue argument is ignored. |
BCP_OPTION_BATCH |
Liczba wierszy na partię.Wartością domyślną jest 0, co oznacza wszystkie wiersze w tabela, gdy dane są wyodrębniane, lub wszystkich wierszy w pliku danych użytkownika, podczas kopiowania danych do SQL Server. Wartość mniejszą niż 1 resetuje BCP_OPTION_BATCH do ustawień domyślnych. |
BCP_OPTION_FILECP |
The iValue argument contains the number of the strona kodowa for the data file. Można określić numer strona kodowa, takie jak 1252 lub 850 lub jednej z następujących wartości:
|
BCP_OPTION_FIRST |
Pierwszy wiersz danych z pliku lub tabela do skopiowania.Wartość domyślna wynosi 1; wartość mniejszą od 1 do domyślnego resetuje tę opcję. |
BCP_OPTION_FIRSTEX |
Określa pierwszy wiersz tabela bazy danych, aby skopiować do pliku danych BCP działaniach. W przypadku BCP w operacjach Określa pierwszy wiersz pliku danych, aby skopiować do tabela bazy danych. The iValue parameter is expected to be the address of a signed 64-bit integer that contains the value.Maksymalna wartość, które mogą być przekazywane do BCPFIRSTEX 2 ^ 63-1. |
BCP_OPTION_HINTS |
The iValue argument contains a znak dwubajtowy ciąg pointer. Określa ciąg, skierowane, albo SQL Server masowego kopiowania przetwarzania wskazówki lub języka Transact-instrukcja języka SQL które zwraca zestaw wyników. Jeśli Transact-SQL Instrukcja jest określony, które zwraca więcej niż jeden zestaw wyników, wszystkie zestawy wyników po pierwsze, są ignorowane. |
BCP_OPTION_KEEPIDENTITY |
Gdy iValue argument jest zestaw na wartość TRUE, ta opcja określa, że metody kopiowanie masowe wstawić podany dla wartości danych SQL Server kolumny zdefiniowana z ograniczeniem tożsamości. Plik wejściowy musi podać wartości dla kolumny identyfikacji.Jeśli ta opcja nie jest ustawiona, nowe wartości tożsamości są generowane wstawionych wierszy.Wszelkie dane znajdujące się w pliku dla kolumn identyfikacji jest ignorowana. |
BCP_OPTION_KEEPNULLS |
Określa, czy wartości pustych danych w pliku są konwertowane na wartości NULL w SQL Server Tabela. Gdy iValue argument jest zestaw na wartość TRUE, puste wartości są konwertowane na wartości NULL w SQL Server Tabela. Ustawieniem domyślnym jest puste wartości są konwertowane na wartość domyślną dla kolumna SQL Server Tabela, jeśli istnieje wartość domyślną. |
BCP_OPTION_LAST |
Ostatni wiersz do skopiowania.Wartość domyślna to wszystkie wiersze mają zostać skopiowane.Wartość mniejszą niż 1 przywrócenie domyślnego tej opcji. |
BCP_OPTION_LASTEX |
Określa ostatni wiersz tabela bazy danych, aby skopiować do pliku danych BCP działaniach. W przypadku BCP w operacjach Określa ostatni wiersz pliku danych, aby skopiować do tabela bazy danych. The iValue parameter is expected to be the address of a signed 64-bit integer that contains the value.Maksymalna wartość, które mogą być przekazywane do BCPLASTEX wynosi 2 ^ 63-1. |
BCP_OPTION_MAXERRS |
Liczba błędów przed zbiorcza operacja kopiowania nie powiedzie się.Wartość domyślna to 10.Wartość mniejszą niż 1 przywrócenie domyślnego tej opcji.kopiowanie masowe nakłada maksymalnie 65 535 błędów.Podjęto próbę zestaw tę opcję, aby wartość większą niż 65 535 powoduje, przy czym opcja zestaw do 65 535. |
BCP_OPTION_UNICODEFILE |
Gdy zestaw na wartość TRUE, ta opcja określa, że plik wejściowy jest pliku w formacie Unicode. |
BCP_OPTION_TEXTFILE |
Plik danych nie jest plikiem binarnym, ale jest to plik tekstowy.BPC nie wykrywania, czy plik tekstowy jest kodowana w standardzie Unicode lub nie, sprawdzając znaczników bajtów Unicode w 2 pierwszych bajtów pliku danych. |
BCP_OPTION_FILEFMT |
Numer wersja na format pliku danych.Może to być 70 (SQL Server 7.0), 80 ()SQL Server 2000), 90 ()SQL Server 2005), lub 100. wartością domyślną jest 100, a wskazuje, że plik znajduje się w SQL Server 2008 Format. Jest to przydatne do eksportowania i importowania danych w formatach, które są obsługiwane przez wcześniejszą wersja serwera.Na przykład, aby importować dane otrzymane z kolumna tekstu w SQL Server 2000 serwer w varchar(max) kolumnaSQL Server 2005 lub nowszego serwera, należy określić 80. Podobnie jeśli zostanie określony podczas eksportowania danych z 80 varchar(max) kolumnie, zostanie on zapisany tak samo, jak tekst kolumn są zapisywane w SQL Server 2000 Formatowanie i mogą być importowane do kolumna tekstu SQL Server 2000 serwer. |
BCP_OPTION_FMTXML |
Służy do określania, że wygenerowany plik formatu powinny być w formacie XML.Wyłączanie domyślnie i jest domyślnie pliki w formacie są zapisywane jako pliki tekstowe.plik formatu XML zapewnia większą elastyczność, ale z niektórymi dodać ograniczenia.Na przykład można nie określić prefiks i terminator pole jednocześnie co jest możliwe w starszych plików w formacie.
Note:
Pliki w formacie XML są tylko kiedy obsługiwana SQL Server narzędzia są instalowane razem z SQL Server Macierzysta klient.
|
BCP_OPTION_ROWCOUNT |
Zwraca liczbę wierszy dotyczy operacji BCP bieżącą (lub ostatnią). |
Argumenty
eOption[w]
Ustawić jedną z opcji wymienionych w powyższej sekcji Uwagi.iValue[w]
Wartość dla określonego eOption. The iValue argument is an integer value cast to a void pointer to allow for future expansion to 64 bit values.
Wartości kodów powrotnych
S_OK
metoda powiodło się.E_FAIL
Wystąpił błąd specyficzny dla dostawca; Aby uzyskać szczegółowe informacje, użyj ISQLServerErrorInfo interfejs.E_UNEXPECTED
Wywołanie metoda było nieoczekiwane.Na przykład IBCPSession::BCPInit metoda nie została wywołana przed wywołaniem tej funkcja.E_OUTOFMEMORY
Błąd limitu pamięci.