Bu makalede excel veritabanından sql server veritabanına veri aktarma işlemini ele almış olacağız. Bu işleme geçmeden önce veri aktarmanın temel ifadesi olan ETL yapısının ne olduğunu ele alalım. Araştırmalarım sonucu elde ettiğim teori bilgilerler ETL işleminin tam olarak ne olduğunu ele alalım.
ETL, Extract, Transform, Load kelimelerinin baş harflerinden oluşan bir ifadedir. ETL, genellikle veri entegrasyonu süreçlerini ifade eder ve bu süreçler, veri ambarı veya veri depolama sistemlerine veri taşıma ve işleme amacıyla kullanılır. İşte ETL’nin temel aşamaları;
1.Extract
Bu ifade elimizde bulunan veriyi sahip olduğumuz kaynaktan çıkarma işlemidir.
2.Transform
Çıkarılan veri, hedef veri tabanına veya depolama alanına uygun hale getirilmek üzere dönüştürülür. Bu aşamada veri temizleme, veri türü dönüşümleri, birleştirme, ayrıştırma ve diğer veri manipülasyon işlemleri gerçekleştirilir.
3. Load
Dönüştürülen veri, hedef veri tabanına veya depolama alanına yüklenir. Bu aşama, genellikle büyük miktarda verinin etkili bir şekilde hedef depolama alanına taşınmasını içerir.
ETL, veriyi kaynaklardan çıkarır, işler ve hedef depolama alanına yerleştirirken aynı zamanda veri bütünlüğünü ve kalitesini sağlamak için çeşitli kontrolleri içerebilir.
Bu teori bilgilerden sonra excel veritabanımızdan sql server veritabanımıza verilerimizi atma işlemine geçelim. Kendi ortamımda oluşturmuş olduğum excel tablosunu aktarma istediğim veritabanıma atmaya çalışacağım.

Excel tablomuzu ilgili test veritabanına aktarmak için Task>Import data diyoruz.
Not: Eğer kendi veritabanımızdan excel veritabanına veri aktaracaksak Export Data ifadesini seçmemiz gerekiyor.

Gelen ekranda Data Source kısmında kaynak olarak Excel’den veri alacağımız için data source kısmına Microsoft Excel diyoruz. Daha sonra Excel file path kısmında Browse diyerek import edeceğimiz excel dosyasını seçiyoruz.
Hangi excel versiyonu kullanıyorsak Excel version kısmında ilgili excel’i seçiyoruz.
Excel dosyamızdaki ilk kolonuda almak için First row has column names seçeneğini seçiyoruz.

Bu adımlardan sonra Next deyip bir sonraki aşamaya geçiyoruz. Bir sonraki aşamaya geçerken aşağıdaki hatayı almış olabilirsiniz. Bu hata çözümü için ilgili Makaleye gidebilirsiniz.

Bu sorunu çözdükten sonra tekrardan Next deyip bir sonraki aşamaya geçiyoruz.

Gelen ekranda Excel dosyamızı hangi sunucu\instance ve veritabanına import yapacaksak onu seçiyoruz. Ya da aşağıda bulunan database sekmesinde New kısmında yeni bir veritabanı oluşturup içerisine Excel dosyamızı import işlemi yapabiliriz.
İşlemlerimizi tamamladıktan sonra Next deyip bir sonraki aşamaya geçiyoruz.

Gelen ekranda herhangi bir değişiklik yapmadan Next deyip bir sonraki aşamaya geçiyoruz.

Gelen ekranda excel tablosundaki verinin ilgili veritabanı altında hangi tabloya aktarılmasını istiyorsak Destination: S3\TEST kısmında onu seçiyoruz.

Tablo ismimi kendim belirliyorum yazmış olduğumuz isme göre sıfırdan tablo oluşmuş olacaktır.

Tablo ismimizi belirledikten sonra sağ alt tarafta bulunan Edit Mappings kısmından kolun ayarlamalarını yapabiliriz veya desteklenmeyen türleri ve kısımları düzenleyebiliriz.

Edit Mappings kısmına girdikten sonra bazı düzenlemeler yaparız. Gelen ekranda create destination table kısmında Edit SQL ifadesine tıkladığımız da bir önceki sayfada oluşturmuş olduğum isimle alakalı bir table oluşturduğunu görüyoruz.

Daha sonra kaynaktaki kolunların Destination’daki isimlerini türlerini size değerini değiştirebiliriz. Kaynakta ad olan kolun ismini büyük AD şeklinde değiştirmiş oldum.

Yukarıdaki işlemleri tamamladıktan sonra OK deyip işlemlerimi tamamlıyorum. Ok dedikten sonra gelen ekranda Preview kısmında ise bir ön izleme yapabiliriz.


Gelen ekranda Next deyip işlemlerimi tamamlıyorum.

Gelen ekranda sql server tip ayarlarını kendisi yapıyor. Biz istersek istediğimiz kolon için istediğimiz tip’i de seçebiliriz. Ama tip uyuşmazlığına dikkat etmemiz gerekir. Bu ekranda herhangi bir düzenleme yapmayıp Next deyip bir sonraki aşamaya geçiyoruz.

Gelen ekranda bir değişiklik yapmayıp Next deyip bir sonraki aşamaya geçiyoruz.

Gelen ekranda son kontrollerimizi yaptıktan sonra Finish deyip işlemlerimizi sonlandırıyorum.

Aktarım işleminin başarılı bir şekilde oluştuğunu görmüş olduk. Close deyip kapattıktan sonra veritabanımızın altında kontrol işlemine bakalım.

Veritabanı altında kontrol ettikten sonra tablomun geldiğini görmüş oldum. Select çektiğimizde ise içindeki verilerin aktarıldığını teyit etmiş olduk.


Bu makalede Excel tablosundan bir veriyi SQL Server veritabanına alma konusunu ele almış olduk.
Başka bir makalede görüşmek dileğiyle..
“Andolsun zamana ki, insan gerçekten ziyan içindedir. Ancak, iman edip de sâlih ameller işleyenler, birbirlerine hakkı tavsiye edenler, birbirlerine sabrı tavsiye edenler başka (Onlar ziyanda değillerdir).” Asr 1-3