CSV Formatındaki Veriyi MSSQL Server’a İmport Etme

Bu makalede CSV formatında alınmış olan text uzantılı dosyayı Sql Server’a nasıl import edeceğimizi ele alacağız. Sql Server’dan csv dosyası oluşturmayı bir önceki makalede görmüş olduk. Bunun için ilgili makaleyi okuyabilirsiniz.

CSV olan dosyamızı sql server’ın olmuş olduğu  dosyayı sunucumuza alıyoruz.

Sql serverda ilgili veritabanına almadan önce CSV uzantılı dosyamızı inceliyoruz. Sebebi ise satırlar veya sütünların nasıl birbirinden ayrıldığını görmek.

CSV dosyamızı incelediğimizde sutunların virgül ile birbirlerinden ayrıldığını satırların ise Y|{CR} ,Y|{LF} veya Y|{CR}{LF} ifadesiyle ayrıldığını görüyoruz.

Bu incelemeden sonra SSMS arayüzünde CSV uzantısındaki verileri import edeceğimiz database’e sağ tıklayıp Import Flat File diyiyoruz. Import data seçeneğini işaretleyerekte işlemlerimizi yapabiliriz. Aşağıdaki seçenekte daha spesifik aktarım olduğu için bunu seçmeyip İmport data kısmından CSV uzantımızdaki verileri alıyoruz.

Yukarıdaki resimde belirtilen kısımdan da aktarım yapabiliriz. Detaylı bir aktarım olmadığı bu seçenekte yapmıyorum.

Veritabanının üzerine sağ tıklayıp Task>Import Data diyiyoruz.

Gelen ekranda Data Source kısmında kaynağımız text uzantılı dosya olduğu için Flat File Source kısmını seçiyoruz.

Kaynağımızı belirledikten sonra File Name kısmında Browse.. diyerek dosyamızı seçiyoruz.

Locale kısmında Turkish(Turkey) kısmını seçiyorum. Code page kısmında ise 1254(ANSI-Turkish) veya 1252(ANSI-Latin I) ifadesinin seçilmesi gerekmektedir.

Header row delimiter kısmında  başlığımızın bir alt satıra geçtiğinde bittiğini belirten ifadeleri görüyoruz. Alt taraftaki Column names in the first data row ikonunda ise ilk satırın kolun başlıkları olduğunu belirtiyorum. Bunu da yine CSV dosyamıza bakarak gözlemleye biliriz. Dikkat edersek CSV dosyamızda kolun isimlerinin bulunduğu ilk satırın sonunda Y| ifadesi olduğu için bunu aşağıdaki row kısmında belirtiyorum ki kolun başlığımızda Y| ifadesinin olmasını istemiyişimizden dolayıdır.

Daha sonra sol kısımda Columns sekmesine giriyoruz. CSV dosyamızın sütunlarının virgül ile ayrıldığını satırların ise Y|{CR}{LF}, Y|{CR} veya Y|{LF} ile ayrılabileceğini makalenin başında dile getirmiştim. Yukarıda yapmış olduğum ise Header başlığındaki kısımdır.

Daha sonra Advanced sekmesine geçiyorum. Bu sekmede tüm kolonların ismini kolonun ayırıcısını aşağıdaki resimde virgül olduğunu görmüş oluyorum. Kolonların veri türünü ise değiştirebiliriz. Kolonun ismini de değiştirebiliriz. Alt tarafta bulunan New seçeneği ile de yeni bir kolon da ekleyebiliriz.

Sol tarafta bulunan Preview ekranında ise  tablomuzun son  şeklini görebiliriz. Data row to skip ekranında kaçıncı satırda başlaması gerektiğini de belirtebiliriz.

Tablomuzun son kolonlarına dikkat edersek Y| ifadesinin olmadığını görmüş oluyoruz. Bunun ise header ve normal satırdaki ayracın Y| ifadesi olduğunu belirttiğimizden dolayıdır.

Sonuç olarak doğru sonuç aldığımızı görmüş oluyoruz.

Tüm bu adımları tanımladıktan sonra Next deyip bir sonraki adıma geçiyorum.

Gelen ekranda Destination kısmında verilerimizin kaydedileceği hedefin sql server olduğu için SQL Server Native Client 11.0  veya Microsoft OLE DB Provider SQL Server’ı ifademizi seçtikten sonra server name kısmında hangi sunucu ve instance a verileri atmak istiyorsak onu seçmemiz lazım zaten veritabanı üzerine tıklayıp bu işlemleri yaptıktan sonra default olarak bu ayarlar gelmiş oldu. Database kısmında ise TEST23 database’i otomatik gelmiş oldu. Ya da sağ tarafta New seçeneği ile yeni bir database oluşturabiliriz. Bu kontrolleri yaptıktan sonra Next deyip bir sonraki aşamaya geçiyorum.

Gelen ekranda manuel kendimiz bir tablo ismi belirleyip sıfırdan oluşturabildiğimiz gibi veritabanı altında bulunan bir tabloya da bu değerleri atabiliriz.

Sağ alt tarafta bulunan Edit Mappings kısmında ise kolonlarımızla ilgili değişiklikleri yapabiliriz. Önceki makalelerde bu konuya değindiğimiz için tekrardan değinmemize gerek duymadım. Preview kısmında ise ön izleme işlemlerimizi yapabiliriz.

Bu ekranlarda işlemlerimiz tamamladıktan sonra Next deyip bir sonraki aşamaya geçiyorum.

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

Özet ekranı inceledikten sonra Finish deyip işlemlerimi sonlandırıyorum.

Verilerimizin başarılı bir şekilde sql server’a import edildiğini görmüş oluyoruz.

Şimdi SSMS arayüzünde veritabanı altında oluşturduğumuz tablonun geldiğini görmüş oluyoruz.

Verilerimizin doğru bir şekilde geldiğini görmüş olduk.

Bu makalede CSV formatında olan dosyamızdan verilen Sql Server’a nasıl kaydedildiğini görmüş oluyoruz. Bir sonraki makalede görüşmek dileğiyle.

“Kadir gecesi bin aydan daha hayırlıdır.”Kadir-3


Author: Yunus YÜCEL

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir