Udostępnij za pośrednictwem


Do importowania lub eksportowania danych przy użyciu formatu znaków

Format znaków jest zalecane, gdy luzem eksportowanie danych do pliku tekstowego, który ma być używany w innym programie lub możesz import zbiorczy dane z pliku tekstowego, który jest generowany przez inny program.

Ostrzeżenie

When you bulk transfer data between instances of Microsoft SQL Server and the data file contains Unicode character data but not any extended or DBCS characters, use the Unicode character format.Aby uzyskać więcej informacji, zobacz Do importowania lub eksportowania danych przy użyciu formatu znaków Unicode.

Format znaków używa formatu danych znak we wszystkich kolumnach.Przechowywanie informacji w formacie znak jest przydatne podczas używania danych z innego programu, takiego jak arkusz kalkulacyjny, lub gdy dane można skopiować do wystąpienie SQL Server od innego dostawcy bazy danych, takich jak Oracle.

Zagadnienia dotyczące korzystania z formatu znaków

Używając formatu znaków, należy rozważyć następujące kwestie:

  • Domyślnie bcp narzędzie oddziela pola danych znakowych z znak tabulacji i kończy rekordy zawierające znak nowego wiersza.Aby uzyskać informacje dotyczące sposobu określania terminatory alternatywnych, zobacz Określanie pola i terminatory wiersza.

  • Domyślnie przed eksport zbiorczy lub importowania danych w trybie znakowym, poniższe konwersje są wykonywane:

    Kierunek operacji zbiorczej

    Konwersja

    Eksportuj

    Konwertuje dane do reprezentacji znaków.Jawnie na żądanie, danych jest konwertowany na strona kodowa żądanego znaku kolumn.Jeśli strona kodowa nie zostanie określony, dane znakowe jest konwertowane przy użyciu strony kodowej OEM z klient komputera.

    Importuj

    Konwertuje dane znakowe reprezentacja macierzysty, gdy jest to konieczne i tłumaczy dane znakowe ze strona kodowa klient na strona kodowa miejsce docelowe kolumna(s).

  • Aby zapobiec utracie rozszerzonych znaków podczas konwersji, należy użyć formatu znaku Unicode lub określić strona kodowa.Aby uzyskać więcej informacji na temat przy użyciu strona kodowa, zobacz Kopiowanie danych między różne sposoby sortowania.

  • Dowolny sql_variant danych przechowywanych w znak -plik formatu jest przechowywany bez metadane.Każda wartość danych jest konwertowana na char format, zgodnie z regułami danych niejawna konwersja.Podczas importowania do sql_variant kolumna, dane są importowane jako char.Podczas importowania do kolumna o typie danych innych niż sql_variant, danych jest konwertowana z char za pomocą niejawna konwersja.Aby uzyskać więcej informacji na temat konwersji danych, zobacz Konwersja typu danych (aparat bazy danych).

  • Bcp wywozu narzędzie money wartości jako pliki danych formatu znaków z czterech cyfr po przecinku i bez żadnych symboli grupowanie cyfr, takich jak separatory przecinek.Na przykład money kolumna zawierającej wartość 1,234,567.123456 jest luzem wyeksportowany do pliku danych jako ciąg znaków 1234567.1235.

Polecenie Opcje formatu znaków

Znak format danych można importować 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 jest obsługiwana przez następujące opcje wiersza polecenia:

Polecenia

Opcja

Opis

BCP

-c

Powoduje, że bcp narzędzie, aby użyć danych znakowych.1

WSTAW LUZEM

DATAFILETYPE ='char'

Użyj formatu znaków podczas zbiorczego importowania danych.

1 Załadować znaków (- c) danych na format zgodny z wcześniejszymi wersjami programu SQL Server klientów, -V przełączyć.Aby uzyskać więcej informacji, zobacz Importowanie macierzystego i znaków formatowania danych z wcześniejszych wersji programu SQL Server.

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

W poniższych przykładach pokazano sposób eksport zbiorczy danych przy użyciu znaku bcp i import zbiorczy takie same dane za pomocą WSTAWIĆ luzem.

Przykładowa tabela

Przykłady wymagają, że tabela o nazwie myTestCharData 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 myTestCharData (
   Col1 smallint,
   Col2 nvarchar(50),
   Col3 nvarchar(50)
   ); 

Wypełnić tę tabela i wyświetlić wynikowy zawartość wykonać następujące instrukcje:

INSERT INTO myTestCharData(Col1,Col2,Col3)
   VALUES(1,'DataField2','DataField3');
INSERT INTO myTestCharData(Col1,Col2,Col3)
   VALUES(2,'DataField2','DataField3');
GO
SELECT Col1,Col2,Col3 FROM myTestCharData

Za pomocą bcp do luzem eksportu danych znakowych

Aby wyeksportować dane z tabela do pliku danych, należy użyć bcp z się opcja i następujące określenia:

Kwalifikatory

Opis

-c

Określa format znaków.

-t,

Określa przecinkiem (,) jako terminator pola.

UwagaUwaga:
terminator pola domyślny jest znak tabulacji (\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 znaków z myTestCharData tabela do nowego pliku danych o nazwie myTestCharData-c.Dat pliku danych używającej przecinek (,) jako terminator pola.W Microsoft wiersz polecenia systemu Windows, wpisz:

bcp AdventureWorks2008R2..myTestCharData out C:\myTestCharData-c.Dat -c -t, -T

Za pomocą polecenia WSTAW luzem do danych znakowych importu zbiorczego

W poniższym przykładzie użyto WSTAW luzem do importowania danych w myTestCharData-c.Dat dane pliku do myTestCharData tabela.W SQL Server Management Studio Edytor kwerend wykonać:

USE AdventureWorks2008R2;
GO
BULK INSERT myTestCharData 
   FROM 'C:\myTestCharData-c.Dat' 
   WITH (
      DATAFILETYPE='char',
      FIELDTERMINATOR=','
   ); 
GO
SELECT Col1,Col2,Col3 FROM myTestCharData;
GO