Veri toplu verme veya alma için hazırlanıyor.

Bu bölümde ilgili toplu verme işlemleri ve toplu alma işlemleri için gereksinimleri için planlama hakkında önemli noktalar açıklanır.

Not

Toplu alma işlemi için bir veri dosyası biçimi nasıl kullanacağınızdan emin değilseniz, kullandığınız bcp kendisinden veri vermek yardımcı tablo bir veri dosyasına.Her veri biçimlendirme alan bu konuda gerekli biçimlendirme için toplu dosya gösterir veri karşılık gelen tablo sütunu almak.Aynı veri biçimlendirme veri dosyanızdaki alanları için kullanın.

Toplu için veri dosyası biçim düşünceleri ver

Kullanarak toplu verme işlemi gerçekleştirmeden önce bcp komutu, aşağıdakileri dikkate alın:

  • Verileri bir dosyaya dışa aktarıldığında bcp komut oluşturur veri dosyasını otomatik olarak belirtilen dosya adını kullanarak.Bu dosya adı zaten kullanımda ise, toplu veri dosyasına kopyalanan olan veri dosyasının varolan içeriği üzerine yazar.

  • Toplu verme bir tablo veya görünümü bir veri dosyası için tabloyu veya görünümü kopyalanan toplu yüklenmekte olan üzerinde select izni gerektirir.

  • Microsoft SQL Server can use parallel scans to retrieve data.Bu nedenle, toplu olan tablo satırları dışarı içinde gelen bir örnek , SQL Server değil normalde garantili olacak sırayla herhangi belirli veri dosyası.Toplu verilen tablo satırları veri dosyasındaki belirli bir sırayla görünmesini sağlamak için queryout seçenek toplu vermek bir sorgudan ve order by yan tümce tümce tümce belirtin.Daha fazla bilgi için bkz: Bir veri dosyası bir sorgudan veri verme.

Toplu alma için veri dosyası biçim gereksinimleri

Bir veri dosyasından veri almak için dosya aşağıdaki temel gereksinimleri karşılaması gerekir:

  • Verileri satır ve sütun biçiminde olmalıdır.

Not

Veri dosyasının yapısı yapısı için aynı olması gerekli değildir SQL Server Tablo için sütunlar atlandı veya yeniden sipariş sırasında toplu alma işlemi.

  • Veri dosyasındaki verileri karakter gibi desteklenen bir biçim olması ya da yerel biçim.

  • Veri, karakter veya Unicode dahil olmak üzere yerel ikili biçiminde olabilir.

  • Kullanarak veri almak için bir bcp deyim, bulk INSERT komutunu veya Ekle...SEÇİN * den openrowset(bulk...) deyim hedef tablo gerekir zaten.

  • Her alana bir veri dosyasına karşılık gelen sütun hedef ile uyumlu tablo.Örneğin, bir int içine alan yüklenemiyor bir datetime sütun.Daha fazla bilgi için bkz: Yerel, karakter veya Unicode biçimleri kullanma ve Veri biçimleri için Uyumluluk kullanma bcp tarafından belirtme.

    Not

    To specify a subset of rows to import from a data file rather than the entire file, you can use a bcp command with the -F first_row switch and/or -L last_row switch.Daha fazla bilgi için bkz: bcp Yardımcı Programı.

  • Sabit uzunluklu veya sabit genişlikli alanlar içeren veri dosyalarını almak için bir biçim dosyası kullanmanız gerekir.Daha fazla bilgi için bkz: xml biçimi dosyaları anlama ve Örnek xml biçimi dosyaları.

  • Virgülle ayrılmış değer (csv) dosyaları tarafından desteklenmiyor SQL Server Toplu alma işlemleri.Ancak, bazı durumlarda, bir csv dosyası veri dosyasını veri toplu alma işlemiyle ilgili olarak kullanılabilir SQL Server.csv dosyasının alan ayırıcısı virgül olacak şekilde sahip olmadığını unutmayın.Toplu alma için bir veri dosyası olarak kullanılabilir durumda olması için bir csv dosyası aşağıdaki kısıtlamalara uyması gerekir:

    • Veri alanları, alan ayırıcısı asla içerir.

    • Yok ya da tüm veri alan değerleri tırnak işaretleri içine ("").

    Toplu alma verileri için bir Microsoft FoxPro veya Visual FoxPro tablo (.dbf) dosyası veya bir Microsoft Excel çalışma (.xls) dosyası gerekir için uyumludur csv dosyasına veri dönüştürmeyukarıdaki kısıtlamalar. Dosyanın uzantısı .csv genellikle olacaktır.Sonra .csv dosyası gibi bir veri dosyasında kullanabileceğiniz bir SQL Server Toplu alma işlemi.

    32-Bit sistemlerde, csv verileri içine aktarmak mümkündür bir SQL Server tablo kullanarak toplu alma iyileştirmeleri olmadan openrowset ile Jet için ole db sağlayıcısı.Metin dosyaları, Jet veri kaynak ile aynı dizinde yer alan bir schema.ini dosyası tarafından tanımlanan şema ile tabloları olarak davranır.csv verileri için schema.ini dosyasında parametrelerden biri olacaktır "biçimi CSVDELIMITED =".Bu çözümü kullanmak için Jet nasıl Test anlamak gerekir IISAMm işlemleri — bağlantısını dize sözdizimi, schema.ini kullanımı, kayıt defteri ayarı seçenekleri vb.).En iyi bu bilgilerin Microsoft Access Yardım ve Bilgi Bankası (BB) makalelerinin kaynaklardır.Daha fazla bilgi için bkz: metin veri kaynağı sürücüsünü başlatma, bir sql Server 7.0 dağıtılmış sorgu güvenli Access veritabanları için bağlantılı bir sunucu ile nasıl, nasıl yapılır: ole db Sağlayıcı Jet 4.0 ISAM veritabanlarına bağlanmak için kullanmak, ve Jet Sağlayıcısı'nın metin IISAM kullanılarak sınırlandırılmış metin dosyaları açma.

Buna ek olarak, verilerin veri toplu alma dosyası içine bir tablo aşağıdakileri gerektirir:

  • Kullanıcıların tablo üzerinde INSERT ve select izinleri olması gerekir.Kullanıcılar ayrıca gerekir alter table iznine gerektiren seçenekleri kullandıklarında veri tanımlama dili kısıtlamalarını devre dışı bırakılması gibi (ddl) işlemlerini.

  • Zaman, toplu alma veri bulk INSERT veya INSERT kullanarak...SEÇİN * dan openrowset(bulk...) veri dosyası olmalı ya da güvenlik profilinin tarafından okuma işlemleri için erişilebilir SQL Server işlem (kullanıcı kullanarak oturum açar, SQL Server sağlanan oturum açma) ya da Microsoft temsil edilen güvenlik altında kullanılan Windows oturumu açmaAyrıca, kullanıcı dosyayı okumak için toplu işlemleri yönetme izniniz olmalıdır.

Not

Bölümlenmiş görünümün toplu alma desteklenmez ve Veri Al bölümlenmiş görünümün toplu girişimleri başarısız olur.