Do importowania lub eksportowania danych przy użyciu formatu znaków Unicode
Unicode character format is recommended for bulk transfer of data between multiple instances of Microsoft SQL Server by using a data file that contains extended/DBCS characters.Format danych znak Unicode umożliwia danych mają być wywożone z serwerem przy użyciu strony kodowej, która różni się od strona kodowa używana przez klient, który wykonuje operację.W takich przypadkach użyj formatu Unicode znaku ma następujące zalety:
Jeśli źródło i obiekt docelowy dane są typy danych standardu Unicode, użyj formatu znaków Unicode zachowuje wszystkie dane znakowe.
Jeśli źródło i obiekt docelowy danych nie są typy danych standardu Unicode, użyj formatu znaków Unicode zminimalizowanie utraty znaków rozszerzonych w danych źródłowych, które nie mogą być reprezentowane na obiekt docelowy.
Pliki danych w formacie znak Unicode konwencjami plików Unicode.Pierwsze dwa bajty w pliku są liczb szesnastkowych 0xFFFE.Tych bajtów służyć jako znaki kolejność bajtów, określający, czy znaczącym bajcie znajduje pierwszy lub ostatni w pliku.
![]() |
---|
Plik formatu do pracy z plikiem danych Unicode znaku pól wejściowych musi być ciągi tekstowe Unicode (czyli stałym rozmiarze lub zakończone znak Unicode ciągi). |
sql_variant Danych jest przechowywana w pliku danych formatu znaków Unicode działa tak samo, jak działa w pliku danych formatu znaków, z wyjątkiem, że dane są przechowywane jako nchar zamiast char danych.Aby uzyskać więcej informacji na temat formatu znaków Zobacz Do importowania lub eksportowania danych przy użyciu formatu znaków.
Aby użyć pole lub wiersza terminator innych niż domyślne, dostarczonego z formatu znaków Unicode, zobacz Określanie pola i terminatory wiersza.
Opcje polecenia dla formatu Unicode znaku
Danych formatu Unicode znaku można zaimportować do tabela za pomocą bcp, ZBIORCZEGO WSTAW lub WSTAW...WYBIERZ * Z OPENROWSET(BULK...).Dla bcp polecenia lub WSTAW luzem instrukcja można określić format danych w wierszu polecenia.Dla instrukcji INSERT...WYBIERZ * Z OPENROWSET(BULK...) instrukcja, należy określić format danych w formacie pliku.
Format znaków Unicode jest obsługiwane przez następujące opcje wiersza polecenia:
Polecenia |
Opcja |
Opis |
---|---|---|
BCP |
-w |
W formacie Unicode znaku. |
WSTAW LUZEM |
DATAFILETYPE ='widechar' |
W formacie Unicode znaku podczas zbiorczego importowania danych. |
Aby uzyskać więcej informacji, zobacz Narzędzie bcp, BULK INSERT (Transact-SQL), lub OPENROWSET (Transact-SQL).
Ostrzeżenie
Alternatywnie można określić formatowanie na podstawie-pole w plik formatu.Aby uzyskać więcej informacji, zobacz Format plików importowanie lub eksportowanie danych.
Przykłady
Następujące przykłady przedstawiają sposób luzem eksportu danych znak Unicode przy użyciu bcp i import zbiorczy tych samych danych przy użyciu WSTAW luzem.
Przykładowa tabela
Przykłady wymagają, że tabela o nazwie myTestUniCharData tabeli można utworzyć w AdventureWorks2008R2 przykładowej bazy danych pod dbo schematu.Przed uruchomieniem przykłady, należy utworzyć w tej tabela.Aby utworzyć w tej tabela SQL Server Management Studio Edytor kwerend wykonać:
USE AdventureWorks2008R2;
GO
CREATE TABLE myTestUniCharData (
Col1 smallint,
Col2 nvarchar(50),
Col3 nvarchar(50)
);
Wypełnić tę tabela i wyświetlić wynikowy zawartość wykonać następujące instrukcje:
INSERT INTO myTestUniCharData(Col1,Col2,Col3)
VALUES(1,'DataField2','DataField3');
INSERT INTO myTestUniCharData(Col1,Col2,Col3)
VALUES(2,'DataField2','DataField3');
GO
SELECT Col1,Col2,Col3 FROM myTestUniCharData
Za pomocą bcp do luzem eksportować dane znakowe Unicode
Aby wyeksportować dane z tabela do pliku danych, należy użyć bcp z się opcja i następujące określenia:
Kwalifikatory |
Opis |
---|---|
-w |
Określa format znaków Unicode. |
-t, |
Określa przecinkiem (,) jako terminator pola. ![]()
terminator pola domyślny jest karta znaków Unicode (\t).Aby uzyskać więcej informacji, zobacz Określanie pola i terminatory wiersza.
|
-T |
Określa, że bcp narzędzie łączy się z SQL Server z zaufane połączenie przy użyciu zintegrowanych zabezpieczeń.Jeśli -T nie jest określony, należy określić - U i -P pomyślnie zalogować. |
Następujące masowe przykład eksportuje dane w formacie Unicode znaku, od myTestUniCharData tabela do nowego pliku danych o nazwie myTestUniCharData-w.Dat pliku danych, który jest przecinek (,) jako terminator pola.W Microsoft wiersz polecenia systemu Windows, wpisz:
bcp AdventureWorks2008R2..myTestUniCharData out C:\myTestUniCharData-w.Dat -w -t, -T
Za pomocą polecenia WSTAW luzem do importu zbiorczego danych znak Unicode
W poniższym przykładzie użyto BULK INSERT do importowania danych w myTestUniCharData-w.Dat dane pliku do myTestUniCharData tabela.terminator pola niestandardowe (,) musi być zadeklarowana w instrukcja.W SQL Server Management Studio Edytor kwerend wykonać:
USE AdventureWorks2008R2;
GO
BULK INSERT myTestUniCharData
FROM 'C:\myTestUniCharData-w.Dat'
WITH (
DATAFILETYPE='widechar',
FIELDTERMINATOR=','
);
GO
SELECT Col1,Col2,Col3 FROM myTestUniCharData;
GO