23 Ağustos 2012 Perşembe

Toad: SQL Loader ile Toplu Veri Aktarımı

Selam Arkadaşlar,

Bugün size Toad içindeki güzel bir internal tool'dan bahsedeceğim: SQL Loader.
Kullananlar vardır eminim ama çok yaygın olmadığından ve benim gibi daha önce kullanmamış olanlar için kısaca bahsetmek istiyorum. Elinizde onbinlerce kayıt olan bir döküman var ve bunu veritabanında bir tabloya yazmak istiyorsunuz. Excel'i açıp birkaç saniye içinde insert statement'ı çekebilirsiniz ancak takdir edersiniz ki, bunların db'ye yazılması, kayıt büyüklüğüne de bağlı olarak, saatler alabilir. SQL Loader ile bu işlemi saniyeler içinde yapabiliyoruz. Farklı özelliği var mı bilmiyorum ama sanıyorum import özelliğine istinaden oluşturulmuş bu tool.

Toad'a giriyorsunuz. Database sekmesinden-import-SQL Loader Wizard'ı seçiyorsunuz.
Örneğin datanız excel'de falan ise, csv uzantılı bir dosyaya bunu kopyalayıp kaydedin öncesinde. csv dosyasından okuyabilmekte(txt dosyası açın, bunu csv uzantılı olarak değiştirin).
Akabinde gelen ilk ekrandan build a new control file deyin.
Ardından verinizin kolon sayısına ve ne ile ayrıldığına göre seçeneklerinizi seçin. Benim datam tek kolonlu olunca herhangi bir ayraç seçmeme de gerek kalmamıştı. Sizin çok kolonlu ise, hangi ayraç varsa kolonlarınız arasında, onu seçin.
Akabinde bu datayı hangi tabloya yazacağınızı seçin.(Add diyerek)
Loading Method'u seçmeniz isteyecek. Truncate, insert ve append seçenekleri mevcut. Truncate seçerseniz, önce tablodaki tüm verileri, varsa şayet, uçurur. Daha sonra sizin verdiğiniz datayı yazar.
Insert seçerseniz, içinde data yoksa tabloya yazacaktır, data varsa hata döndürür.
Append seçerseniz de, tabloda data varsa ellemez. Verdiğiniz datayı da ilave eder. Veriyi çoğullama riski yoksa en garanti metot append'dir.
Ancak seçiminizi yapıp add dediğinizde, seçilen metodu kontrol edin. Append seçtiğimde insert, insert seçtiğimde de append bastı ekrana. Toad'ım sapıtmış da olabilir. :)
Datanızda başlık olup olmadığına dikkat edin ve ona göre, hangi satırdan itibaren yazması gerektiğini belirtin.
Sonrasında bir ctf(control file) ismi istiyor sizden. Uydurma bir isim yazın textbox'a. Ne işe yaradığını bilen varsa paylaşabilir.
Son olarak execute now dediğinizde, sadece birkaç saniye içinde, tüm verinin tabloya yazıldığını göreceksiniz.

Görüşmek üzere.

1 yorum:

Unknown dedi ki...

Teşekkürler, güzel bir açıklama olmuş.