Text Tabanlı Dosyadan Veri Yükleme
Gerçek hayatta işler teoride olduğu gibi olmaz. Özellikle kurumsal büyük ölçekli firmalarda çok çeşitli veri kaynakları olabilir. Bu veri kaynaklarına örnek olarak, MSSQL den başka veri tabanları (Oracle, MySql, Db2 gibi), web servisler ya da text tabanlı dosyalar(txt,excel gibi). Şimdi bir adet excel veri kaynağı oluşturalım. Dosyamızın adını Data koyduk. İçine de 30 adet veri koyduk. Siz isteseniz daha fazla koyabilirsiniz. (Şekil 1).
Eğer dosyamız hazırsa şimdi veri tabanı kısmına geçebiliriz. Kitabımızda Adventur eWorksDW veri tabanını kullandığımız için bizde oluşturacağımız tabloyu AdventureWorksDW de oluşturuyoruz. Excel dosyamızda id, ad, soyad isimli üç adet kolon mevcut. Biz de tablomuz da bu kolonları oluşturalım.
Kod:
USE AdventureWorksDW2012
GO
CREATE TABLE dbo.Data
(
id int,
Ad nvarchar(20),
Soyad nvarchar(20)
)
Command(s) completed successfully.
Tablomuzu oluşturduktan sonra şimdi sıra verilerimizi dosyadan okuyup tablomuzun içine yazmaya geldi. Sql Server Management Studio'yo ya gelip Adventur eWorksDW üzerinde sağ tuşa basıyoruz.
Task'a geliyoruz açılan menuden de Import Data ya tıklıyoruz (Şekil 2). Karşımıza Export Import Wizard çıkıyor(Şekil 3).
Açılan ekranda ileriye (Next) basıyoruz. Karşımıza çıkan ekranda (Şekil 4) bizden Veri Kaynağı (Datasource) istiyor. Oradan Microsoft Excel'i seçiyoruz. Bizden Excel dosyasının yolunu istiyor. Oluşturduğumuz data isimli Excel dosyamızın yolunu seçiyoruz. Sonra Excel dosyamızın versiyonu seçiyoruz. Çünkü 2007 yolunda xls olan Excel uzantısı 2007 yılında xlsx oldu. Bu sebepten dolayı Excel versiyonumuzu seçiyoruz. Bizim Excel versiyonumuz Microsoft Excel 2007 olduğu için bizde onu seçiyoruz.
Şekil 1'de de görüldüğü gibi Data dosyamızdaki ilk satırda Kolon adları yazıyor. Bizde burada First Row Has Column Names i işaretliyoruz. Çünkü bizim ilk satırımız kolon adını barındırıyor. Eğer sizin veri kaynağınızın ilk satırda kolon adları yoksa bu seçeneği işaretlemeyin. Next'e basın karşımıza çıkan ekran bizim veriyi kaydedeceğimiz veri tabanını seçtiğimiz ekrandır.
Şekil 5'de gördüğümüz üzere Destinationdan Sql Native Client 11.0 ı seçiyoruz , Server Name'nizi yazıyorsunuz. Database olarak da AdventureWorksDW2012 i seçiyoruz. Sonra Next'e basıyoruz. Karşımıza çıkan ekranda Copy data from one or more tables or views seçeneğini seçiyoruz ve Next'e basıyoruz.
Source olarak Excel dosyamızda Sayfa1$ ı seçmiştik. Burada da Destination olarak da oluşturduğumuz tabloyu seçiyoruz.
Şekil 6 da da olduğu gibi Next'e basıyoruz. Şekil 7 açılan ekrandan Next'e basıyoruz.
Şekil 8 de açılan ekranda Run Immediately'yi tıklıyoruz. İstersek Sql Server Integration Paketi olarak da kaydede biliriz. Çıkan ekrana Next diyoruz. Sonrada Finish'e tıklıyoruz.
Şekil 9 da karşımıza işlemin sonucu çıkıyor. Bize sonuç olarak 30 adet kayıt transfer edildiğini bildiyor.
Kontrol amaçlı tablomuza bir select atalım
Sekil 10 da çıkan sonuçtan gördüğümüz üzere işlemimiz başarı ile sonuçlandı.