Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
W programie SQL Server dwa typy plików formatu są obsługiwane w przypadku eksportowania i importowania zbiorczego: plików formatu innego niż XML i plików formatu XML.
Zalety plików formatu innego niż XML
Plik formatu innego niż XML można utworzyć automatycznie, określając opcję formatu w poleceniu bcp .
Po określeniu istniejącego pliku formatu polecenie bcp używa wartości zapisanych w pliku formatu i nie wyświetla monitu o typ magazynu plików, długość prefiksu, długość pola lub terminator pola.
Możesz utworzyć plik formatu dla określonego typu danych, takiego jak dane znaków lub dane natywne.
Możesz utworzyć plik formatu innego niż XML, który zawiera interaktywne określone atrybuty dla każdego pola danych. Aby uzyskać więcej informacji, zobacz Określanie formatów danych zgodności podczas korzystania z programu bcp (SQL Server).
Pliki formatu XML oferują kilka zalet w porównaniu z plikami formatu innego niż XML. Aby uzyskać więcej informacji, zobacz Pliki formatu XML (SQL Server).
Uwaga / Notatka
Ta składnia, w tym wstawianie zbiorcze, nie jest obsługiwana w usłudze Azure Synapse Analytics. W usłudze Azure Synapse Analytics i innych integracjach platform baz danych w chmurze realizuj przenoszenie danych za pomocą instrukcji COPY w usłudze Azure Data Factorylub przy użyciu instrukcji języka T-SQL , takich jak COPY INTO i PolyBase.
Struktura plików formatu innego niż XML
Plik formatu innego niż XML jest plikiem tekstowym, który ma określoną strukturę. Plik formatu innego niż XML zawiera informacje o typie magazynu plików, długości prefiksu, długości pola i terminatorze pola każdej kolumny tabeli.
Na poniższej ilustracji przedstawiono pola format-plik dla przykładowego pliku formatu innego niż XML.
Pola Wersja i Liczba kolumn są wykonywane tylko raz. Ich znaczenie opisano w poniższej tabeli.
| Pole formatu pliku | Opis |
|---|---|
| wersja | Numer wersji narzędzia bcp : 9.0 = SQL Server 2005 (9.x) 10.0 = SQL Server 2008 (10.0.x) 11.0 = SQL Server 2012 (11.x) 12.0 = SQL Server 2014 (12.x) 13.0 = SQL Server 2016 (13.x) 14.0 = SQL Server 2017 (14.x) 15.0 = SQL Server 2019 (15.x) 16.0 = SQL Server 2022 (16.x) Numer wersji jest rozpoznawany tylko przez narzędzie bcp, a nie przez język Transact-SQL. Uwaga: wersja narzędzia bcp używana do odczytywania pliku formatu musi być taka sama jak wersja lub nowsza niż została użyta do utworzenia pliku formatu. Na przykład program SQL Server 2012 (11.x) bcp może odczytać plik formatu w wersji 10.0, który jest generowany przez program SQL Server 2008 (10.0.x) bcp, ale program SQL Server 2008 (10.0.x) bcp nie może odczytać pliku formatu w wersji 12.0, który jest generowany przez program SQL Server 2014 (12.x) bcp. |
| Liczba kolumn | Liczba pól w pliku danych. Ta wartość musi być identyczna we wszystkich wierszach. |
Inne pola format-plik opisują pola danych, które mają być importowane zbiorczo lub eksportowane. Każde pole danych wymaga oddzielnego wiersza w pliku formatu. Każdy wiersz pliku formatu zawiera wartości pól format-file opisanych w poniższej tabeli.
| Pole formatu pliku | Opis |
|---|---|
| Kolejność pól pliku hosta | Liczba wskazująca położenie każdego pola w pliku danych. Pierwsze pole w wierszu to 1, a kolejne wartości są przenumerowane w kolejności. |
| Typ danych pliku hosta | Wskazuje typ danych przechowywany w danym polu pliku danych. W przypadku plików danych ASCII użyj narzędzia SQLCHAR; w przypadku plików danych w formacie natywnym użyj domyślnych typów danych. Aby uzyskać więcej informacji, zobacz Określanie typu magazynu plików przy użyciu narzędzia bcp (SQL Server). |
| Długość prefiksu | Liczba znaków prefiksu długości dla pola. Prawidłowe długości prefiksów to 0, 1, 2, 4 i 8. Aby uniknąć określania prefiksu długości, ustaw wartość 0. Jeśli pole zawiera NULL wartości danych, należy określić prefiks długości. Aby uzyskać więcej informacji, zobacz Określanie długości prefiksu w plikach danych przy użyciu narzędzia bcp (SQL Server). |
| Długość danych pliku hosta | Maksymalna długość w bajtach typu danych przechowywanych w określonym polu pliku danych. Jeśli tworzysz plik formatu innego niż XML dla rozdzielanego pliku tekstowego, możesz określić 0 dla długości danych pliku hosta dla każdego pola danych. Gdy importowany jest rozdzielany plik tekstowy z prefiksem o długości 0 i terminatorem, wartość długości pola jest ignorowana, ponieważ przestrzeń magazynowa używana przez pole jest równa długości danych wraz z terminatorem. Aby uzyskać więcej informacji, zobacz Określanie długości pola przy użyciu narzędzia bcp (SQL Server). |
| Terminator | Ogranicznik rozdziela pola w pliku danych. Typowe terminatory to przecinek (,), tabulator (\t) oraz koniec wiersza (\r\n). Aby uzyskać więcej informacji, zobacz Określanie terminatorów pól i wierszy (SQL Server). |
| Kolejność kolumn serwera | Kolejność wyświetlania kolumn w tabeli programu SQL Server. Jeśli na przykład czwarte pole w pliku danych mapuje się na szóstą kolumnę w tabeli SQL Server, to kolejność kolumny serwera dla czwartego pola wynosi 6. Aby zapobiec odbieraniu danych z pliku danych w kolumnie tabeli, ustaw wartość kolejności kolumny serwera na 0. |
| Nazwa kolumny serwera | Nazwa kolumny skopiowanej z tabeli programu SQL Server. Rzeczywista nazwa pola nie jest wymagana, ale pole w pliku formatu nie może być puste. |
| Sortowanie kolumn | Sortowanie używane do przechowywania znaków i danych Unicode w pliku danych. |
Uwaga / Notatka
Możesz zmodyfikować plik formatu, aby umożliwić zbiorcze importowanie z pliku danych, w którym liczba lub kolejność pól różnią się od liczby lub kolejności kolumn tabeli. Aby uzyskać więcej informacji, zobacz listę Powiązane zadania .
Przykład pliku formatu innego niż XML
W poniższym przykładzie pokazano wcześniej utworzony plik formatu innego niż XML (myDepartmentIdentical-f-c.fmt). W tym pliku opisano pole danych tekstowych dla każdej kolumny w HumanResources.Department tabeli w przykładowej AdventureWorks2025 bazie danych.
Wygenerowany plik formatu myDepartmentIdentical-f-c.fmtzawiera następujące informacje:
12.0
4
1 SQLCHAR 0 7 "\t" 1 DepartmentID ""
2 SQLCHAR 0 100 "\t" 2 Name SQL_Latin1_General_CP1_CI_AS
3 SQLCHAR 0 100 "\t" 3 GroupName SQL_Latin1_General_CP1_CI_AS
4 SQLCHAR 0 24 "\r\n" 4 ModifiedDate ""
Uwaga / Notatka
Aby zapoznać się z ilustracją przedstawiającą pola format-plik w odniesieniu do tego przykładowego pliku formatu innego niż XML, zobacz Struktura plików formatu innego niż XML.
Powiązane zadania
- Tworzenie pliku formatu przy użyciu narzędzia bcp (SQL Server)
- Używanie pliku formatu do zbiorczego importowania danych (SQL Server)
- Użyj pliku formatu, aby pominąć kolumnę tabeli (SQL Server)
- Użyj pliku formatu, aby pominąć pole danych (SQL Server)
- Użyj pliku formatu do mapowania kolumn tabeli na pola pliku danych (SQL Server)