Określanie typu magazynu plików przez używanie bcp
Typ pliku magazynu w tym artykule opisano, jak dane są przechowywane w pliku danych.Dane można eksportować do pliku danych jako jej typ tabela bazy danych (format macierzysty), w jego reprezentacji znaków (format znaków) lub jako dowolny typ danych, który obsługuje niejawna konwersja; na przykład kopiowanie smallint jako int.Typy danych zdefiniowane przez użytkownika są eksportowane jako ich typów podstawowych.
Ostrzeżenie
Aby uzyskać informacje dotyczące konwersji danych, zobacz Konwersja typu danych (aparat bazy danych).
Monituj o typ przechowywania pliku bcp
Jeśli interakcyjne bcp zawiera polecenia w lub się opcji bez przełącznik plik formatu (-f) lub przełącznik formatu danych (- n, - c, -w, lub -N), wiersze polecenia typu pliku magazynu danych każdego pole w następujący sposób:
Enter the file storage type of field <field_name> [<default>]:
Odpowiedź na ten monit zależy od można wykonywać następujące zadania:
To bulk export data from an instance of Microsoft SQL Server to a data file in the most compact storage possible (native data format), accept the default file storage types that are provided by bcp.Listę typów magazynowania plików macierzystych zobacz "Macierzystego magazynu typy plików" w dalszej części tego tematu.
Luzem eksportowania danych z wystąpienie z SQL Server do pliku danych w formacie znaku, określ char jako plik typu magazynu dla wszystkich kolumn w tabela.
Aby import zbiorczy danych do wystąpienie SQL Server z pliku danych, określ typ pliku magazynu jako char typy przechowywanych w znaków formatowania i danych przechowywanych w formacie typu danych w trybie macierzystym, należy określić jeden z typów plików magazynu odpowiednio:
Typ magazynu plików
Wpisz w wiersz polecenia
char1
c[har]
varchar
c[har]
nchar
w
nvarchar
w
text2
T[ext]
ntext2
W
binary
x
varbinary
x
image2
I[mage]
datetime
d[ate]
smalldatetime
D
time
te
date
de
datetime2
d2
datetimeoffset
do
decimal
n
numeric
n
float
f[loat]
real
r
Int
i[nt]
bigint
B[igint]
smallint
s[mallint]
tinyint
t[inyint]
money
m[oney]
smallmoney
M
bit
b[it]
uniqueidentifier
u
sql_variant
V[ariant]
timestamp
x
UDT (typ danych zdefiniowany przez użytkownika)
U
XML
X
1 Interakcji z długość pola, długość prefiksu i terminatory określa ilość wolnego miejsca, przydzielony w pliku danych noncharacter danych jest eksportowany jako char typ pliku magazynu.Aby uzyskać więcej informacji, zobacz Przechowywanie danych w formacie znaków.
2ntext, text, I image typów danych zostaną usunięte w przyszłej wersja SQL Server.W nowych prac rozwojowych unikać tych typów danych i plan do modyfikowania aplikacji, które używają obecnie.Use nvarchar(max), varchar(max), and varbinary(max) instead.Aby uzyskać więcej informacji, zobacz Duża wartość typów danych.
Macierzyste typy magazynów pliku
Każdy typ magazynu format macierzysty jest rejestrowany w plik formatu jako odpowiedni typ danych pliku hosta.
Typ magazynu plików |
Typ danych pliku hosta |
---|---|
char1 |
SQLCHAR |
varchar |
SQLCHAR |
nchar |
SQLNCHAR |
nvarchar |
SQLNCHAR |
text2 |
SQLCHAR |
ntext2 |
SQLNCHAR |
binary |
SQLBINARY |
varbinary |
SQLBINARY |
image2 |
SQLBINARY |
datetime |
ELEMENT SQLDATETIME |
smalldatetime |
SQLDATETIM4 |
decimal |
SQLDECIMAL |
numeric |
SQLNUMERIC |
float |
SQLFLT8 |
real |
SQLFLT4 |
int |
SQLINT |
bigint |
SQLBIGINT |
smallint |
SQLSMALLINT |
tinyint |
SQLTINYINT |
money |
SQLMONEY |
smallmoney |
SQLMONEY4 |
bit |
SQLBIT |
uniqueidentifier |
SQLUNIQUEID |
sql_variant |
ELEMENT SQLVARIANT |
timestamp |
SQLBINARY |
UDT (typ danych zdefiniowany przez użytkownika) |
SQLUDT |
1 Użyj formatu plików danych, które są przechowywane w znaku char jako typ pliku magazynu.Dlatego znak plików danych, SQLCHAR jest jedyny typ danych w plik formatu.
2 Nie można import zbiorczy danych do text, ntext, i image kolumny, które mają wartości DOMYŚLNYCH.
Uwagi dodatkowe typów pamięci masowej
Kiedy luzem eksportowania danych z wystąpienie z SQL Server do pliku danych:
Zawsze można określić char jako typ pliku magazynu.
Po wprowadzeniu pliku typ magazynu, który reprezentuje nieprawidłową niejawna konwersja, bcp awarii; na przykład, chociaż można określić int dla smallint danych, jeśli określisz smallint dla int danych, wynikiem błędów przepełnienia.
Gdy typy danych noncharacter takich jak float, money, datetime, lub int są przechowywane jako ich typów baz danych, dane są zapisywane do pliku danych w SQL Server format macierzysty.
Ostrzeżenie
Po interaktywnie określić wszystkie pole w bcp polecenia wierszy polecenia Zapisz swoje odpowiedzi dla każdego pole w innych niż XML plik formatu.Więcej informacji na temat plików w formacie XML programu, zobacz Opis plików w formacie XML programu.