Başlangıç > Database, Forms, Oracle, PL/SQL, Reports > pl/sql type array kullanımı

pl/sql type array kullanımı


Merhaba
Çoğu zaman hazırladığımız programlarda çok farklı oracle özelliklerini kullanırız. Bunlardan birisi de array kullanımıdır. Bu özellik ile istediğimiz birçok değişkeni ve değeri bir array olarak saklar ya da kontrollerimizde kullanırız. Bu kullanım tamamen sizin geliştirdiğiniz programa ve ihtiyaçlarınıza göre değişir. Bu konu ile basit olarak bir array nasıl tanımlanız ve nasıl kullanılır onu inceleyeceğiz.

Şimdi bir array için ihtiyacımız olan record tipini tanımlayalım ve sonra da bunun kullanımına bakalım.

  type TestRec is record(
    testVarchar varchar2(10),
    testNumber  number,
    testDate    date);

Record tanımımız hazır olduğuna göre artık bu record örneğini kullanacak olan array tanımımızı yapalım.

  type TestRecArray is table of TestRec index by binary_integer;

Artık array için tanımımızda hazır olduğuna göre basit bir declare yazıp array içerisine veri ekleme ve eklediğimiz verileri nasıl okuyacağımıza bir bakalım.

declare
  ---Array için recod tanımı
  type TestRec is record(
    testVarchar varchar2(10),
    testNumber  number,
    testDate    date);

  ---Array için type tanımı
  type TestRecArray is table of TestRec index by binary_integer;

  ---Tanımlanan type için değişken tanumı
  tra TestRecArray;

  cursor tst is
    select rownum from dual connect by rownum <= 5;

  i pls_integer := 0;
begin
  ---Array içine veri ekleme
  for c in tst loop
    tra(i).testVarchar := 'Deneme-' || i;
    tra(i).testNumber := i;
    tra(i).testDate := sysdate + i;
    i := i + 1;
  end loop;

  ---Array içindeki verileri okuma
  i := tra.first;
  while i is not null loop
    dbms_output.put_line(i || '. Değerler');
    dbms_output.put_line('Varchar:' || tra(i).testVarchar || 
                         ' Number:' || tra(i).testNumber || 
                         ' Date:' || tra(i).testDate);
    i := tra.next(i);
  end loop;
end;

Örnek bir declare yazdık ve bu kod bloğu çalışında da aşağıdaki gibi bir sonuç elde edeceğiz.

0. Değerler
Varchar:Deneme-0 Number:0 Date:23/04/2013
1. Değerler
Varchar:Deneme-1 Number:1 Date:24/04/2013
2. Değerler
Varchar:Deneme-2 Number:2 Date:25/04/2013
3. Değerler
Varchar:Deneme-3 Number:3 Date:26/04/2013
4. Değerler
Varchar:Deneme-4 Number:4 Date:27/04/2013

Örnekte de olduğu gibi bu basit kullanımı yazdığımız kodlarda istediğmiz gibi kullanabiliriz. Hata tanımladığımız bu array tipini programlarda fonksiyon ya da prosedür içine parametre olarak gönderip alabilir ya da fonksiyon dönüş değerli olarak da kullanabiliriz.
Kolay gelsin.

Reklamlar
  1. Henüz yorum yapılmamış.
  1. No trackbacks yet.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: