Üye Kayıt Üye Giriş

ORACLE SQL LOADER


ORACLE SQL LOADER

 

Bu makalemizde bir text dosyasının içerisinden bir tabloya veriler nasıl aktarılır bunu anlatacağız.Bu işlem içinse  SQLLOADER aracını kullanacağız

Öncelikle ihtiyacımız olan şey içerisinde veri bulunan bir dosya.Örneğin CVS formatına çevrilmiş bir Excel dosyası gibi. Bu dosyadaki veriler  ‘;’ gibi bir işarele birbirlerinden ayrıldığından SQLLOADER için yaratacağımız kontrol dosyası için uygundur. Bu kontrol dosyasında veritabanındaki tablo bilgileri,ayraç olarak kullanılan ifade, sabit uzunluk değerleri gibi ayarlama bilgileri bulunur. Böylelikle  veri istenildiği gibi veritabanına doğru bir şekilde kaydedile bilir.

Elimizde var olan bir tabloya veya yeni yaratacağımız bir tabloya bu  text dosyasındaki veriler gönderilebilir. Böyle bir tablonun var olmadığını varsayacak olursak ilk işimiz bu tabloyu yaratmak olacaktır.

Örneğin;

Create table  MUSTERI_DATA  ( musteri_id number

,musteri_adi varchar2(50)

,musteri_soyadi varchar2(50)

,musteri_tel     varchar2(20)

,musteri_email varchar2(80)

);

Sonrasında ise yapılacak iş veri ile beraber bulunacak bir kontrol dosyası yaratmaktır.İstenilirse bu kontrol dosyası  veri içermeyip verinin bulunduğu text dosyasını gösterebilir.Bu dosyayı yaratırken  ‘ctl ’ uzantısı ile yaratalım ve içerisine şunları ekleyelim. Dosya adını da contol.ctl yaratalım.

LOAD DATA
INFILE *
INTO TABLE MUSTERI_DATA
FIELDS TERMINATED BY ‘,’
(
musteri_id

,musteri_adi

,musteri_soyadi

,musteri_tel

,musteri_email

)
BEGINDATA
1,EREN,GULERYUZ,212-566-555-555,ereng@bilginc.com

2,MUSTAFA,KALAYCI,212-666-555-444,mustafak@bilginc.com

3,KEMAL FIRAT,İPEK,212-888-888-888,firati@bilginc.com

 

Geriye son aşama olan çalıştırmak kaldı bu işlemi de kullanıcımızın HR kullanıcısı olduğunu varsayarsak şu şekilde yapabiliriz(CMD control dosyasın bulunduğu dizin olursa);

CMD>sqlldr hr/hr control=control.ctl;

Böylelikle dataları tablomuz kaydetmiş oluyoruz.

MUSTERI_ID    MUSTERI_ADI    MUSTERI_SOYADI     MUSTERI_TEL          MUSTERI_EMAIL

——————————————————————————————————————————-

1               EREN                   GULERYUZ                  212-566-555-555      ereng@bilginc.com

2              MUSTAFA            KALAYCI                     212-666-555-444      mustafak@bilginc.com

3               KEMAL FIRAT    İPEK                            212-888-888-888       firati@bilginc.com

Bilgisayar Dershanesi Ders Sahibi;
Bilgisayar Dershanesi

Yorumlar

Yorum Yapabilmek İçin Üye Girişi Yapmanız Gerekmektedir.

ETİKETLER