Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Microsoft SQL Server XML Toplu Yükleme nesne modeli, SQLXMLBulkLoad nesnesinden oluşur. Bu nesne aşağıdaki yöntemleri ve özellikleri destekler.
Methods
Uygula
Toplu veriler, parametre olarak sağlanan şema dosyası ve veri dosyası (veya akışı) kullanılarak yüklenir.
Özellikler
BulkLoad
Toplu Yük yapılıp yapılmaması gerektiğini belirtir. Bu özellik, sadece şemaları oluşturmak istiyorsanız (aşağıdaki SchemaGen, SGDropTables ve SGUseID özelliklerine bakınız) ve toplu yük yapmak istemiyorsanız faydalıdır. Bu bir Boolean mülkü. Özellik TRUE olarak ayarlandığında, XML Toplu Yükleme çalıştırılır. SAHTE olarak ayarlandığında, XML Toplu Yükleme çalışmaz.
Varsayılan değer DOĞRUDUR.
CheckConstraints
XML Toplu Yükleme verileri sütunlara eklerken sütunda belirtilen kısıtlamaların (örneğin sütunlar arasındaki birincil anahtar/yabancı anahtar ilişkisinden kaynaklanan kısıtlamalar) kontrol edilip edilmeyeceğini belirtir. Bu bir Boolean mülkü.
Özellik TRUE olarak ayarlandığında, XML Toplu Yük eklenen her değer için kısıtlamaları kontrol eder (bu, kısıtlama ihlali bir hata ile sonuçlandığı anlamına gelir).
Uyarı
Bu özelliği YANLIŞ olarak bırakmak için, hedef tablolarda ALTER TABLE izinlerine sahip olmanız gerekir. Daha fazla bilgi için bkz. ALTER TABLE (Transact-SQL).
Varsayılan değer YANLIŞ'tır. FALSE olarak ayarlandığında, XML Toplu Yük ekleme işlemi sırasında kısıtlamaları görmezden gelir. Mevcut uygulamada, tabloları eşleme şemasında birincil anahtar ve yabancı anahtar ilişkilerinin sırasına göre tanımlamanız gerekir. Yani, birincil anahtara sahip bir tablo, yabancı anahtara sahip ilgili tablodan önce tanımlanmalıdır; aksi takdirde, XML Toplu Yükleme başarısız olur.
Eğer ID Yayımı yapılıyorsa, bu seçenek geçerli değildir ve kısıtlama kontrolü açık kalır. Bu, ebeveynin bir kimlik alanı olduğu ve değerin üretildiği şekilde çocuğa verildiği bir ilişki tanımlandığında gerçekleşir KeepIdentity=False .
ConnectionCommand
XML Bulk Load'un kullanması gereken mevcut bir bağlantı nesnesini (örneğin ADO veya ICommand komut nesnesi) tanımlar. ConnectionString özelliğine sahip bir bağlantı dizisi belirtmek yerine ConnectionCommand özelliğini kullanabilirsiniz. ConnectionCommand kullanıyorsanız İşlem özelliği TRUE olarak ayarlanmalıdır.
Hem ConnectionString hem de ConnectionCommand özelliklerini kullanırsanız, XML Toplu Yükleme son belirtilen özelliği kullanır.
Varsayılan değer NULL'dir.
ConnectionString
Veritabanının bir örneğine bağlantı kurmak için gerekli bilgileri sağlayan OLE DB bağlantı dizisini belirler. Hem ConnectionString hem de ConnectionCommand özelliklerini kullanırsanız, XML Toplu Yükleme son belirtilen özelliği kullanır.
Varsayılan değer NULL'dir.
ErrorLogFile
XML Toplu Yükleme'nin hata ve mesajları kaydettiği dosya adını belirtir. Varsayılan bir dizidir, bu durumda kayıt yapılmaz.
FireTriggers
Hedef tablolarında tanımlanan tetikleyicilerin Toplu Yük işlemi sırasında ateşlenmesi gerektiğini belirtir. Varsayılan SAHTE.
TRUE'ya ayarlandığında, tetikleyiciler insert işlemleri sırasında normal şekilde ateşlenir.
Uyarı
Bu özelliği YANLIŞ olarak bırakmak için, hedef tablolarda ALTER TABLE izinlerine sahip olmanız gerekir. Daha fazla bilgi için bkz. ALTER TABLE (Transact-SQL).
Eğer ID Yayımı yapılıyorsa bu seçenek geçerli olmaz ve tetikleyiciler açık kalır. Bu, ebeveynin bir kimlik alanı olduğu ve değerin üretildiği şekilde çocuğa verildiği bir ilişki tanımlandığında gerçekleşir KeepIdentity=False .
ForceTableLock
XML Toplu Yük'ün veriyi kopyaladığı tabloların Toplu Yük süresi boyunca kilitlenip kilitlenmemesi gerektiğini belirtir. Bu bir Boolean mülkü. Özellik TRUE olarak ayarlandığında, XML Toplu Yük Toplu Yük süresi boyunca tablo kilitleri edinir. FALSE olarak ayarlandığında, XML Toplu Yük her kayıt bir tabloya eklediğinde bir tablo kilidi elde eder.
Varsayılan değer YANLIŞ'tır.
IgnoreDuplicateKeys
Bir anahtar sütununa tekrarlanan değerler ekleme girişimi yapılırsa ne yapılacağını belirtir. Bu özellik TRUE olarak ayarlandığında ve bir anahtar sütununa tekrarlanmış bir değere sahip bir kayıt eklemeye çalışılırsa, SQL Server o kaydı eklemez. Ama sonraki kaydı da ekliyor; böylece Toplu Yük işlemi başarısız olmaz. Bu özellik FALSE olarak ayarlanmışsa, bir anahtar sütununa tekrarlanmış bir değer ekleme girişiminde Toplu Yük başarısız olur.
IgnoreDuplicateKeys özelliği TRUE olarak ayarlandığında, tabloya eklenen her kayıt için bir COMMIT ifadesi verilir. Bu performansı yavaşlatıyor. Özellik, işlem davranışı dosyalar kullanılarak uygulandığı için, İşlem özelliği FALSE olarak ayarlandığında TRUE olarak ayarlanabilir.
Varsayılan değer YANLIŞ'tır.
KeepIdentity
Kaynak dosyada bir Identity tipi sütununun değerleriyle nasıl başa çıkacağınızı belirtir. Bu bir Boolean mülkü. Özellik TRUE olarak ayarlandığında, XML Toplu Yük kaynak dosyada belirtilen değerleri kimlik sütununa atar. Özellik FALSE olarak ayarlandığında, toplu yükleme işlemi kaynakta belirtilen kimlik sütunu değerlerini görmezden gelir. Bu durumda, SQL Server kimlik sütununa bir değer atar.
Toplu Yük, SQL Server tarafından oluşturulan değerlerin saklandığı bir kimlik sütununa atıfta bulunan yabancı anahtar bir sütun içeriyorsa, Toplu Yük bu kimlik değerlerini uygun şekilde yabancı anahtar sütununa yayar.
Bu özelliğin değeri, toplu yükte yer alan tüm sütunlara uygulanır. Varsayılan değer DOĞRUDUR.
Uyarı
Bu özelliği DOĞRU olarak bırakmak için, hedef tablolarda ALTER TABLE izinlerine sahip olmanız gerekir. Aksi takdirde, değeri YANLIŞ olarak ayarlanmalıdır. Daha fazla bilgi için bkz. ALTER TABLE (Transact-SQL).
KeepNulls
XML belgesinde ilgili bir öznitelik veya alt öğe eksik olan bir sütun için hangi değerin kullanılacağını belirtir. Bu bir Boolean mülkü. Özellik TRUE olarak ayarlandığında, XML Toplu Yük sütuna null bir değer atar. Sunucuda belirlenen varsayılan değeri (varsa) sütunun değerini atamaz. Bu özelliğin değeri, toplu yükte yer alan tüm sütunlara uygulanır.
Varsayılan değer YANLIŞ'tır.
SchemaGen
Toplu Yük işlemi yapmadan önce gerekli tabloların oluşturulup oluşturulmayacağını belirtir. Bu bir Boolean mülkü. Bu özellik TRUE olarak ayarlanırsa, eşleme şemasında tanımlanan tablolar oluşturulur (veritabanı var olmalıdır). Eğer veritabanında bir veya daha fazla tablo zaten mevcutsa, SGDropTables özelliği bu önceden var olan tabloların bırakılıp yeniden oluşturulup oluşturulmayacağını belirler.
SchemaGen özelliğinin varsayılan değeri YANLIŞTIR. SchemaGen, yeni oluşturulan tablolar üzerinde BIRINCIL ANAHTAR kısıtlamaları oluşturmaz. Ancak SchemaGen, eşleme şemasında eşleşen sql:ilişki ve sql:anahtar alanları açıklamalarını bulabiliyorsa ve anahtar alanı tek bir sütundan oluşuyorsa veritabanında YABANCI ANAHTAR kısıtlamaları oluşturur.
SchemaGen özelliğini TRUE olarak ayarlarsanız, XML Toplu Yük şunları yapar:
Eleman ve öznitelik adlarından gerekli tabloları oluşturur. Bu nedenle, şemada öğe ve öznitelik adları için SQL Server ayrılmış kelimeleri kullanmamanız önemlidir.
xml veri tipiformatında sql:overflow-field kullanılarak atanan herhangi bir sütun için taşma verisini döndürür.
SGDropTables
Mevcut tabloların kaldırılıp yeniden oluşturulup oluşturulup çıkarılmaması gerektiğini belirtir. Bu özelliği SchemaGen özelliği TRUE olarak ayarlandığında kullanırsınız. Eğer SGDropTables YANLIŞ ise, mevcut tablolar korunur. Bu özellik DOĞRU olduğunda, mevcut tablolar silinir ve yeniden oluşturulur.
Varsayılan değer YANLIŞ'tır.
SGUseID
Haritalama şemasında kimlik tipi olarak tanımlanan özniteliğin, tablo oluşturulduğunda BIRINCIL ANAHTAR kısıtlaması oluşturulmasında kullanılıp kullanılamayacağını belirtir. SchemaGen özelliği TRUE olarak ayarlandığında bu özelliği kullanın. Eğer SGUseID TRUE'ysa, SchemaGen aracı dt:type="id" birincil anahtar sütunu olarak belirtilen bir öznitelik kullanır ve tablo oluşturulurken uygun BIRINCIL ANAHTAR kısıtlamasını ekler.
Varsayılan değer YANLIŞ'tır.
TempFilePath
XML Toplu Yükleme'nin işlem edilen toplu yükleme için geçici dosyaları oluşturduğu dosya yolunu belirtir. (Bu özellik yalnızca Transaction özelliği TRUE olarak ayarlandığında faydalıdır.) XML Toplu Yükleme için kullanılan SQL Server hesabının bu yola erişimi olduğundan emin olmalısınız. Bu özellik ayarlanmadıysa, XML Toplu Yükleme geçici dosyaları TEMP ortam değişkeninde belirtilen konumda saklar.
İşlem
Toplu Yükün işlem olarak yapılıp yapılmaması gerektiğini belirtir; bu durumda Toplu Yük başarısız olursa geri alma garanti edilir. Bu bir Boolean mülkü. Özellik TRUE olarak ayarlanmışsa, Toplu Yük işlemsel bağlamda gerçekleşir. TempFilePath özelliği yalnızca İşlem TRUE olarak ayarlandığında faydalıdır.
Uyarı
Eğer ikili veri yüklüyorsanız (örneğin bin.hex, bin.base64 XML veri tipleri gibi, görüntü SQL Server veri tipleri), İşlem özelliği FALSE olarak ayarlanmalıdır.
Varsayılan değer YANLIŞ'tır.
XMLFragment
Kaynak verinin bir XML parçası olup olmadığını belirtir. XML parçası, tek bir üst seviye (kök) elemanı olmayan bir XML belgesidir. Bu bir Boolean mülkü. Bu özellik, kaynak dosya bir XML parçasından oluşuyorsa TRUE olarak ayarlanmalıdır.
Varsayılan değer YANLIŞ'tır.