2016-04-07 14 views
0

Şu anda düz bir dosyayı SQL Veritabanı tablosuna içe aktaracak bir SSIS paketi oluşturmaya çalışıyorum.Düz biçimdeki dosyaları SSIS'de birden çok biçim dosyasıyla içe aktarma

Her bir ilgili veriyi içeren bir tablo oluşturmak zorunda olduğum her bir kendi biçim dosyasıyla yaklaşık 30 farklı düz dosya vardır. Düz dosyalar ilk satırı sütun başlıkları içermiyor. I.E. Bir dosya PostalAddress1 ve başka bir PostalAddressLine1 olabilir ve bu veritabanında 2 sütun olurdu ve bunlar boş olabilir. Bazı düz dosyalar daha fazla veri içerebilir, bu durumda daha az olanların boş değeri olacaktır.

SSIS ile daha önce deneyimsiz olduğum için, satır ve sütun sınırlayıcılarının yanı sıra tüm sütun adlarını almak için düz dosyayı ayrıştırmak üzere bir komut dosyası kullanacağımı düşündüm. Daha sonra düz dosya kaynağını (değişken) ayarladıktan sonra metin dosyasına yalnızca bir sütuna ve her kaydın bir satır olmasına, sonra her satırı ayrıştırmak ve ilgili sütuna ayarlamak için bir Komut Dosyası Dönüştürmesi kullanmasını sağladım. I.E. değer 5 Tüm dosya bir sql görev sonra sadece tek PostalAddress alanı var söyleyebilirim başka tabloya jenerik evreleme tablodan tüm verileri itmek anlamına çalıştırabilirsiniz işlendikten sonra Ad Ben Row.FirstName = Value[4];

olarak ayarlayın olurdu olduğunu Sağlanan her format dosyası için 3 yerine 3 deyin.

Bu dosyalardan bazıları boyut olarak 2.5 gb olabilir.

Sorularım şunlardır:

bu Bunu yapmak için doğru bir şekilde olurdu?
Bunu yapmanın daha hızlı/daha iyi/daha basit bir yolu var mı?

cevap

0

Bu, meta verilere dayanarak paketleri dinamik olarak oluşturan BiML için iyi bir adaydır. BiMLScript giriş itibaren

:

Daha da iyisi, otomasyon mantığı BimlScript kod Nuggets kullanarak Biml doğrudan koda gömülebilir. C# veya VB kodu 'un bu parçacıkları, otomatik olarak büyük Biml kodları oluşturmak için harici meta verilere erişmenizi sağlar. Örneğin, hazırlama ortamlarını otomatik olarak oluşturabilir veya sütun meta verilerine dayanarak SCD kalıplarını uygulayabilirsiniz.

+0

BiML'e baktım, [BIDS yardımcı eklentisi]. Ancak, meta verilere dayanarak paketleri dinamik olarak nasıl kuracağımı bilmiyorum. Bildiğim kadarıyla, yalnızca paketleri nesneye sürükleyip bırakma ihtiyacını ortadan kaldırır ve bunun yerine yalnızca tüm paketi xml kullanarak kodlarsınız. Daha sonra onu inşa etmek. Ayrıca, tür oluşturduğum SSIS sisteminin tek bir paket olması gerektiğine dikkat edin; çünkü bu paket, içe aktarılması gereken düz dosya için bir tabloyu ve düz dosyanın bir kimliğini temel alarak bir tabloyu formatlayacaktır. bunun için dosya. Ve bir tabloya yerleştirin. – xFrenzy47x

+0

BiMLScript'e baktınız mı? http://bimlscript.com/walkthrough/Details/3105 –

İlgili konular