Başlangıç > Database, Oracle, PL/SQL > pl/sql type kullanımı örnek

pl/sql type kullanımı örnek


Merhaba pl/sql ortamında bir type oluşturma ve kullanımına dair hazırlanmış bir örnek.Öncelikle type oluşturalım.

CREATE OR REPLACE TYPE example_type AS OBJECT
(
  nmber NUMBER,
  str   VARCHAR2(50),
  dt    DATE
);
CREATE OR REPLACE TYPE example_table IS TABLE OF example_type;

Bu scriptler ile type hazırlanmış oldu.Sıra geldi oluşturuan bu type ı kullanan bir function hazırlayama.Aşağıdaki script ile de function hazırlayabiliriz.

CREATE OR REPLACE FUNCTION example RETURN example_table IS
  RESULT example_table := example_table(example_type(NULL, NULL, NULL));

  CURSOR example_cursor IS
    SELECT rownum nmber,
           'Row' rw,
           SYSDATE dt
      FROM dual
    CONNECT BY rownum <= 10;

BEGIN

  FOR example_rec IN example_cursor LOOP

    RESULT(RESULT.LAST) := example_type(example_rec.nmber, example_rec.nmber || '.' || example_rec.rw, example_rec.dt);
    RESULT.EXTEND;
  END LOOP;

  RESULT.TRIM;
  RETURN(RESULT);

END;

Artık hem type hem de function umuz hazır. Şimdi de bunları bir sql ile kullanalım. Aşağıdaki gibi bir sql ile de type ve function kullanmış oluyoruz.

SELECT * FROM TABLE(CAST(example AS example_table));

Çalıştırdığımız sql in çıktısıda aşağıdaki gibi olacaktır.

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: