pl/sql type kullanımı örnek
14 Mayıs 2010
Yorum yapın
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));




