About Bulk Import and Bulk Export Operations
SQL Server Zbiorcza obsługuje eksportowania danych z SQL Server Tabela i dla masowych importowania danych do SQL Server Tabela lub widok nonpartitioned. Dostępne są następujące metody podstawowej.
Metoda |
Description |
Importuje dane |
Eksportuje dane |
---|---|---|---|
Narzędzie wiersza polecenia (bcp.exe), które zbiorczej eksportu oraz zbiorcze importuje dane i generuje pliki w formacie. |
Tak |
Tak |
|
A Transact-SQL instrukcja importuje dane bezpośrednio z pliku danych do tabela bazy danych lub widoku nonpartitioned. |
Tak |
Nie |
|
A Transact-SQL Instrukcja, która używa dostawcy OPENROWSET zbiorczej zestawu zestaw wierszy do import zbiorczy dane z do SQL Server Tabela, określając funkcja OPENROWSET(BULK…) do wyboru danych w instrukcji INSERT. |
Tak |
Nie |
Ograniczenia
SQL Server operacji importu zbiorczego nie obsługuje importowania danych z plików wartości oddzielone przecinkami (CSV).Jednak W 32-bitowych systemów, możliwe jest importowanie danych CSV do SQL Server tabela bez optymalizacji importu zbiorczego przy użyciu OPENROWSET with the OLE DB dostawca for Jet.Aparat Jet traktuje pliki tekstowe jako tabele programu ze schematem zdefiniowane w pliku schema.ini, który znajduje się w tym samym katalogu, w źródle danych.Jeden z parametrów w pliku schema.ini dla danych CSV, jest "FORMAT = CSVDelimited".Aby zastosować to rozwiązanie, należy zrozumieć, w jaki sposób test the Jet IISAMm operacje — składni ciąg połączenia, użycie schema.ini, opcje ustawień rejestru i tak dalej).Najlepszych źródeł te informacje są w Pomocy programu Microsoft Access i artykułów z bazy wiedza (KB).Aby uzyskać więcej informacji zobacz Inicjowanie sterownika urządzenie źródłowe danych tekstu, Jak użyć w kwerenda rozproszona programu SQL Server 7.0 z połączonego serwera dostępu do zabezpieczonej bazy danych, and JAK: Dostawca baz danych OLE aparatu Jet 4.0 za pomocą połączenia z bazami danych ISAM,Jak otworzyć pliki tekstowe rozdzielane za pomocą dostawcy Jet tekstu.
W trakcie w stosunku doOperacja Out of Process
Instrukcja BULK INSERT i funkcja OPENROWSET(BULK) wykonać procesu z SQL Server, współużytkowanie tej samej przestrzeni adresowej pamięci. Ponieważ pliki danych są otwierane przez SQL Server Przetwarzaj dane nie zostaną skopiowane między procesu klient i SQL Server procesy. Do uwagi dotyczące zabezpieczeń podczas importowania danych za pomocą BULK INSERT lub INSERT...SELECT * FROM OPENROWSET(BULK...), zobacz Importing Bulk Data by Using BULK INSERT or OPENROWSET(BULK...).
Z drugiej strony BCP , narzędzie uruchamia się limit czasu procesu.Aby przenieść dane całej przestrzeni pamięci procesów, BCP must use Inter-Process dane organizacyjne.Inter-process data marshalingis the process of converting parameters of a method call into a stream of bytes.To można dodać znaczne obciążenie procesora.Jednakże ponieważ oba BCP analizuje i konwersji danych w formacie macierzystym przechowywania w procesie klient, mogą one odciążania konwersja typu danych i analizy SQL Server proces. W związku z tym jeśli ograniczenie PROCESORA, użytkownik może osiągnąć lepszą wydajność importu zbiorczego, na komputerze, na którym jest więcej niż jeden PROCESOR lub na różnych komputerach za pomocą BCP zamiast przy użyciu zbiorczej INSERT lub INSERT...WYBIERZ * Z OPENROWSET(BULK).
Format plików
The bcp utility, BULK INSERT, and INSERT ...SELECT * FROM OPENROWSET(BULK...) wszystkich obsługują specjalistyczne plik formatu , że są przechowywane formatowanie informacji dla każdego pole w pliku danych.plik formatu może być również zawierają informacje o odpowiednich SQL Server Tabela. plik formatu może służyć do zawierają wszystkie informacje formatu, które są wymagane do masowego eksportowane dane i zbiorczej importować dane do wystąpienie SQL Server.
Pliki w formacie zapewniają elastyczny sposób interpretowania danych, ponieważ jest on w pliku danych podczas importowania, a także sformatować dane w pliku danych podczas eksportowania.Elastyczność ta eliminuje konieczność pisania kodu specjalnych do interpretowania danych lub ponownie sformatować dane, które mają szczególne wymagania SQL Server lub zewnętrznej aplikacji. Na przykład jeśli zbiorczej eksportowania danych do załadowania do aplikacji, która wymaga wartości rozdzielanych przecinkami, Wstaw przecinki jako pole terminatory eksportowanych danych za pomocą formatu pliku.
SQL Server 2005 i jego nowsze wersje obsługuje dwa rodzaje plików w formacie: Pliki w formacie XML i pliki w formacie XML inny niż. Pliki w formacie XML nie są obsługiwane we wcześniejszych wersjach SQL ServerPliki w formacie XML były nowe w SQL Server 2005.
The bcp utility is the only narzędzie that can generate a plik formatu.Aby uzyskać więcej informacji zobaczCreating a Format File.Aby uzyskać więcej informacji na temat formatu plików Zobacz Format Files for Importing or Exporting Data.
Uwaga
W przypadkach, gdy plik formatu nie jest podany podczas zbiorczej Eksport lub import operacji, użytkownik może zadecydować zastąpić domyślne formatowanie w wierszu polecenia.
Procesor kwerend i import zbiorczy
Do masowych importowania danych do wystąpienie SQL Server, BCP , narzędzie zbiorczej instrukcja INSERT i INSERT...SELECT * FROM OPENROWSET(BULK...) instrukcja wszystkich pracuje procesor kwerend.
Wszystkie trzy metody konwersji danych w pliku danych do wierszy OLE DB.Jednak metoda konwersji zależy, w następujący sposób:
The bcp utility reads the data file and sends a TDS stream to the SQL Server kopiowanie masowe Program (BCP) API, which converts the data into OLE DB rowsets.
dostawca zbiorczych zestawów zestaw wierszy OPENROWSET i BULK INSERT zarówno konwertowanie danych pliku bezpośrednio zestawu zestaw wierszy DB OLE.
Zestawy wierszy DB OLE są wstawiane do tabela miejsce docelowe procesora kwerendy, które plany i optymalizuje każdej operacji.
Zagadnienia wydajności
Uwagi dotyczące wydajności mogą być również istotne przy importowaniu dużych ilości danych.W niektórych przypadkach można poprawić wydajność, zmieniając sposób obsługi operacji importu zbiorczego lub zbiorczego eksportu, co najmniej jedną z następujących czynności:
Parametry partia
Ograniczenie sprawdzania ograniczeń typu CHECK
W jaki sposób zbiorczej transakcje są rejestrowane.Jest to istotne w przypadku baz danych, które zazwyczaj używają model pełnego odzyskiwanie.
Porządkowanie eksportowane dane
Dane równolegle, importowanie
Blokowanie tabela
Wykonanie wyzwalacza
Aby uzyskać więcej informacji zobacz Optimizing Bulk Import Performance.
Uwaga
Techniki optymalizacji specjalnych nie istnieje dla operacji eksportowania zbiorczej.Operacje te po prostu zaznacz dane z tabela źródłowej za pomocą instrukcja SELECT.
Historia zmian
Microsoft Learning |
---|
Dodaje do dokumentu, które pliki wartości rozdzielanych przecinkami (CSV) nie są obsługiwane przez sekcji "Ograniczenia" SQL Server operacji importu zbiorczego. |
See Also