Aracılığıyla paylaş


Yerel biçim kullanarak Al veya veri ver

Native format is recommended when you bulk transfer data between multiple instances of Microsoft SQL Server using a data file that does not contain any extended/double-byte character set (DBCS) characters.

Not

Birden çok örneği arasında transfer verilerin toplu olarak SQL Server kullanmanız gereken genişletilmiş içeren bir veri dosyası veya DBCS karakterlerini kullanarak Unicode yerel biçim. Daha fazla bilgi için bkz:Unicode yerel biçim kullanarak Al veya veri ver.

Yerel biçim veritabanı yerel veri türlerini korur.Yerel biçim veri arasında yüksek hızlı veri aktarımı içindir SQL Server Tablolar. Dosya biçimini kullanıyorsanız, kaynak ve hedef tablo aynı olması gerekmez.Veri aktarımı, iki adımdan oluşur:

  1. Toplu bir kaynaktan gelen verileri verme tablo bir veri dosyasına

  2. Verileri hedef veri dosyasından içe toplu tablo

Aynı tablolar arasında yerel biçim kullanımı, gereksiz dönüştürme veri türlerini ve karakter biçimi, saat ve yer önler.En yüksek aktarım hızı elde etmek için , ancak birkaç denetimleri veri biçimlendirme ile ilgili gerçekleştirilmez.Yüklenen veri ile ilgili sorunları önlemek için aşağıdaki kısıtlamaları liste bakın.

Kısıtlamalar

Veri almayı yerel biçim başarıyla emin olun:

  • Veri dosyası yerel biçim.

  • Hedef Tablo (doğru sayıda sütun, veri türü, uzunluk, NULL durumu vb. sahip) veri dosyası ile uyumlu olması ya da her alan, ilgili sütunlarından eşlemek için biçim dosyası kullanmanız gerekir.

    Not

    Hedef tablo ile eşleşmeyen bir dosyadan veri alıyorsanız, alma işlemi başarısız, ancak hedef tablosuna eklendiklerinde veri değerleri yanlış olasıdır.Hedef Tablo biçimini kullanarak veri dosyasından yorumlanır olmasıdır.Bu nedenle, herhangi bir uyumsuzluk yanlış değer içinde ekleme oluşur.Bununla birlikte, hiçbir koşulda bir tür uyumsuzluğu mantıksal veya fiziksel tutarsızlıkları veritabanında neden olabilir.

    Biçim dosyaları kullanma hakkında daha fazla bilgi için bkz: Biçimi dosyaları, alma veya veri vermek için.

Başarılı BIR alma hedefi tablo bozuk.

Nasıl Kullanımıbcp Handles veri yerel biçim

Bu bölüm için nasıl özel hususlar anlatılır. Kullanımıbcp hizmet verir ve veri alır yerel biçim.

  • Noncharacter veri

    Kullanımıbcp yardımcı programını kullanan SQL Server iç ikili veri biçiminde noncharacter verileri yazmak için bir tablo bir veri dosyası için.

  • char veya varchar Veri

    Her birinin başında char veya varchar alan Kullanımıbcp önek uzunluğu ekler.

    Important noteImportant Note:

    Yerel mod kullanıldığında, varsayılan olarak, Kullanımıbcp yardımcı programı karakterlerini dönüştürür.SQL Server OEM karakterlerine, önce bunları bir veri dosyasına kopyalar. The bcp utility converts characters from a data file to ANSI characters before it bulk imports them into a SQL Server tablo. Bu dönüştürme sırasında dile özgü karakter veri kaybolmuş olabilir.Genişletilmiş karakterler, Unicode yerel biçimini kullanın ya da bir kod sayfa belirtin.Kod sayfa'nı kullanma hakkında daha fazla bilgi için bkz: Farklı harmanlamalar arasında veri kopyalama.

  • sql_variant veri

    If sql_variant Yerel biçim veri dosyasındaki bir SQLVARIANT olarak saklanan verileri, verileri, tüm alt özellikleri korur. Her Veri değerinin veri tipini kaydeden meta veriler, veri değeri ile birlikte depolanır.Bu meta veriler, veri değeri ile aynı veri türünde bir hedef olarak yeniden oluşturmak için kullanılır sql_variant sütun.

    Hedef sütunun veri türünü değilse sql_variant, her veri değeri örtülü veri dönüştürme normal kurallarına hedef sütunun veri türüne dönüştürülür. Veri dönüştürme sırasında bir hata ortaya çıkarsa, Cari toplu iş iş işlemin geri döndürülüyor.Tüm char ve varchar arasında transfer edilen değerler sql_variant sütunları, kod sayfa dönüştürme sorunları olabilir. Daha fazla bilgi için bkz:Farklı harmanlamalar arasında veri kopyalama.

    Veri dönüştürme hakkında daha fazla bilgi için bkz: Veri türü dönüştürme (Veritabanı Altyapısı).

Yerel biçim için komut seçenekleri

Yerel biçim tablosunu kullanarak içine veri alabilirsiniz Kullanımıbcp... INSERT ya da Ekle toplu SEÇİN * openrowset(bulk...) GELEN.Için bir Kullanımıbcp komut veya BULK INSERT deyim, komut satırında veri biçimini belirtebilirsiniz.INSERT için...SELECT * FROM OPENROWSET(BULK...) deyim, bir biçim dosyasında veri biçimini belirtin.

Yerel biçim aşağıdaki komut satırı seçenekleri desteklenmektedir:

Komutu

Seçenek

Açıklama

Kullanımıbcp

-n

Neden Kullanımıbcp verinin özgün veri türlerini kullanmaya yardımcı programı. 1

TOPLU EKLEME

DATAFILETYPE ='native'

Yerel veya geniş bir yerel veri türleri verinin kullanır.Veri türleri biçiminde bir dosyayı belirtir, DATAFILETYPE gerekli değildir not alın.

1Yerel ( yüklenemedi.-n) önceki sürümleriyle uyumlu bir biçime veriSQL Server istemciler, v- anahtarı.Daha fazla bilgi için bkz:Yerel ve verileri Biçimlendir karakter, SQL Server'ın önceki sürümlerden alınıyor.

Daha fazla bilgi için bkz: Kullanımıbcp yardımcı programı, BULK INSERT (Transact-SQL), veya OPENROWSET (Transact-SQL).

Not

Alternatif olarak, her alan ayrı ayrı bir Biçim dosyasında, biçimlendirme belirtebilirsiniz.Daha fazla bilgi için bkz:Biçimi dosyaları, alma veya veri vermek için.

Örnekler

Aşağıdaki örnekler kullanarak yerel veri dışa aktarma toplu nasıl göstermektedir. Kullanımıbcp ve toplu alma BULK INSERT kullanarak aynı veri.

Örnek tablo

Örnekler, bir tablo adı gerektirir. myTestNativeData tablo içinde oluşturulmasıAdventureWorks örnek veritabanınıdbo şema.Bu tablo, örnekler çalıştırmadan önce oluşturmanız gerekir.Içinde SQL Server Management Studio Sorgu Düzenleyicisi'nde, yürütün:

USE AdventureWorks;
GO
CREATE TABLE myTestNativeData (
   Col1 smallint,
   Col2 nvarchar(50),
   Col3 nvarchar(50)
   ); 

Bu tablo doldurmak ve elde edilen içeriğini görüntülemek için yürütmek aþaðýdaki:

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

Yerel veri toplu vermek Kullanımıbcp kullanma

Kendisinden veri vermek tablo veri dosyası Kullanımıbcp with the Çıkış seçeneği ve aşağıdaki niteleyicileri:

Niteleyicileri

Açıklama

-n

Yerel veri türlerini belirtir.

-T

Belirleyen Kullanımıbcp için yardımcı programı bağlanırSQL Server tümleşik güvenlik kullanarak güvenilir bağlantı ile. If -T belirtilmezse, belirtmek gerekir-U and -P in. başarıyla oturum açmak için

Aşağıdaki örnek toplu özgün biçimden verileri verir myTestNativeData tabloya adlı yeni bir veri dosyası myTestNativeData-n.Dat veri dosyası'nı tıklatın. AT Microsoft Windows komut istemi girin:

bcp AdventureWorks..myTestNativeData out C:\myTestNativeData-n.Dat -n -T

Yerel veri BULK ımport işlemi için BULK INSERT kullanma

Verileri almak için BULK INSERT aşağıdaki örnek kullanır myTestNativeData-n.Dat uygulamasına veri dosyası myTestNativeData TABLO. Içinde SQL Server Management Studio Sorgu Düzenleyicisi'nde, yürütün:

USE AdventureWorks;
GO
BULK INSERT myTestNativeData 
    FROM 'C:\myTestNativeData-n.Dat' 
   WITH (DATAFILETYPE='native'); 
GO
SELECT Col1,Col2,Col3 FROM myTestNativeData
GO