Aracılığıyla paylaş


Tümleştirme Hizmetleri paketlerini birleştirme

Geçerli sürümünde SQL Server Integration Services, sql Yürüt görev sql deyimini BIRLEŞTIRME deyimi içerebilir. Bu BIRLEŞTIRME deyimi tek bir deyimi içinde birden çok INSERT, update ve delete işlemi gerçekleştirmenize olanak tanır.

Bir paketi BIRLEŞTIRME deyimini kullanmak için şu adımları izleyin:

  • Yükleyen dönüştüren ve kaynak veriler geçici bir tabloya kaydeder veri akışı bir görev oluşturun.

  • BIRLEŞTIRME deyimini içeren sql Yürüt görev oluşturun.

  • Veri akışı görev için sql Yürüt görev bağlanmak ve verileri hazırlama tablosunda giriş olarak birleştirme deyimini kullanın.

    [!NOT]

    BIRLEŞTIRME deyimi genellikle bu senaryoda hazırlama bir tablo gerektirse de, BIRLEŞTIRME deyimini performansını genellikle, arama dönüşümü tarafından gerçekleştirilen satır tarafından arama aşıyor. BİRLEŞTİRME, ayrıca bir arama tablosu büyük boyutunu kendi başvuru tablosu önbelleğe alma için arama dönüşümünü kullanılabilir bellek test etmek yararlıdır.

Bu konu geri kalanını BIRLEŞTIRME deyimini bazı ek kullanımları açıklanır. Daha fazla bilgi ve birleştirme işlemini kullanın örnekler için bkz: Inserting, Updating, and Deleting Data by Using MERGE.

CodePlex topluluk örnek BIRLEŞTIRME deyimini kullanımını destekleyen bir örnek hedef bileşeni için bkz birleştirme hedef.

BIRLEŞTIRME kullanma

Tipik olarak, ekler, güncelleştirmeleri ve silmeleri bir tablodan başka bir tabloya dahil değişiklikleri uygulamak istediğinizde BIRLEŞTIRME deyimini kullanın. Önce SQL Server 2008, bu işlem hem arama dönüşümü hem de birden fazla ole db komut dönüştürmeleri gerekiyor. Arama dönüşümü, her satırdaki yeni veya değiştirilmiş olup olmadığını belirlemek için satır tarafından arama gerçekleştirilir. ole db komut dönüşümleri sonra gerekli ekleme, güncelleştirme ve silme işlemleri gerçekleştirilir. Yılında başlayan SQL Server 2008, arama dönüşümü ve karşılık gelen ole db komut dönüşümleri tek BIRLEŞTIRME deyimi yerine.

Artımlı yükler ile birleştirme

Değişiklik veri yakalama yeni işlevler SQL Server 2008güvenilir bir veri ambarı için artımlı yük gerçekleştirmek kolaylaştırır. Parametreli ole db komut dönüşümleri ekler ve güncelleştirmeler gerçekleştirmek için kullanmaya alternatif, her iki işlem birleştirmek için BIRLEŞTIRME deyimini kullanabilirsiniz.

Daha fazla bilgi için, bkz. Değişiklikleri uygulamak için hedef.

Diğer senaryoları birleştirme

Aşağıdaki senaryolarda, sen-ebilmek kullanma dışında veya içinde BIRLEŞTIRME deyimini bir Integration Servicespaket. Ancak, bir Integration Servicespaketi, bu verileri birden çok heterojen kaynaklardan yüklemek için genellikle gereklidir ve sonra birleştirmek ve verileri temizlemek için. Bu nedenle, kolaylık ve bakım kolaylığı için bir paketi BIRLEŞTIRME deyimini kullanarak düşünebilirsiniz.

Parça satın alma alışkanlıkları

FactBuyingHabitsTablo veri ambarındaki izler üzerinde müşteri satın belirli bir ürünün son tarihi. Tablo, ProductID, MüşteriNo ve PurchaseDate sütunları oluşur. Her hafta, işlem veritabanı oluşturur bir PurchaseRecordsBu hafta boyunca yapılan alımları içeren tablo. Amaç tek bir BIRLEŞTIRME deyimini bilgileri birleştirmek için kullanmaktır PurchaseRecordsiçine tablo FactBuyingHabitstablosu. Mevcut ürün-müşteri çiftleri, BIRLEŞTIRME deyimini yeni satırlar ekler. Mevcut ürün-müşteri çiftleri için en son tarih-in-satınalma için BIRLEŞTIRME deyimini güncelleştirir.

Parça Fiyat geçmişi

DimBookTablo bir kitap satıcısının stokta kitapların listesini gösterir ve her kitap fiyat tarihçesi tanımlar. Bu tablo bu sütunlar vardır: ISBN, ProductID, fiyat, raf ve IsCurrent. Bu tablo aynı zamanda kitap olmuştur her fiyat için bir satır vardır. Bu satırları geçerli fiyat içerir. Hangi cari fiyat içerdiğini belirtmek için bu satır için IsCurrent sütun değeri 1 olarak ayarlanır.

Her hafta, veritabanını oluşturur bir WeeklyChangeshafta ve hafta içinde eklenen yeni kitaplar için fiyat değişiklikleri içeren tablo. Tek BIRLEŞTIRME deyimini kullanarak değişiklikleri uygulayabilirsiniz WeeklyChangesiçin tablo DimBooktablosu. BIRLEŞTIRME deyimini Kitaplar yeni eklenen yeni satırlar ekler ve 0 olan fiyatları değişti mevcut kitapların satırlar için IsCurrent sütunu güncelleştirir. BIRLEŞTIRME deyimini de yeni satırlar ekler kitap olan fiyatları değişti ve bu yeni satırlar için IsCurrent sütun değeri 1'e ayarlar.

Eski tabloyu karşı yeni verilerle bir tablo birleştirme

Veritabanı modelleri bir "Açık şeması", bir tablo kullanarak bir nesnenin özelliklerini içeren her özellik için ad-değer çiftleri. PropertiesTablo, üç sütun vardır: EntityID, PropertyID ve değer. A NewPropertiestablo daha yeni bir sürümü olan tabloya sahip eşitlenmesi Propertiestablosu. Bu iki tabloları eşitlemek için aşağıdaki işlemleri gerçekleştirmek için tek bir BIRLEŞTIRME deyimini kullanabilirsiniz:

  • Özelliklerinden silmek Propertiesyok ise masa dan NewPropertiestablosu.

  • Olan özelliklerin değerlerini güncelleştirmek Propertiesbulunan yeni değerleri ile tablo NewPropertiestablosu.

  • Yeni özellikleri olan özellikleri ekle NewPropertiestablo ancak içinde bulunmayan Propertiestablosu.

Bu yaklaşım, Çoğaltma senaryoları, amaç iki sunucularda eşzamanlı iki tablodaki verileri tutmak için nerede benzer senaryolarda yararlıdır.

Parça stoku

InventoryVeritabanı olan bir ProductsInventoryProductID ve StockOnHand sütunları olan tablo. A ShipmentsProductID, MüşteriNo ve miktarı sütunları içeren tabloyu izleyen sevkiyat ürünlerin müşterilere. ProductInventoryGüncelleştirilecek olan günlük bilgileri temel tablo Shipmentstablosu. Tek BIRLEŞTIRME deyimini stokta azaltabilir ProductInventorytablosuna dayalı yapılan gönderiler. Bir ürün için stok sıfıra düşürülmüştür, BIRLEŞTIRME deyimini de bu ürün satırı silebilirsiniz ProductInventorytablosu.

İlişkili İçerik

Integration Services simgesi (küçük) Integration Services ile güncel kalın

En son karşıdan yüklemeler, makaleler, örnekler ve Microsoft video yanı sıra topluluk seçili çözümleri için ziyaret Integration ServicesMSDN sayfası:


Bu güncelleştirmelerle ilgili otomatik bildirim almak için, sayfadaki RSS akışlarına abone olun.