1.Oracle Type oluşturma
create or replace type ornekType as object (
i number,
n varchar2(30)
);
2.Oracle Nested Type oluşturmai number,
n varchar2(30)
);
create or replace type Ornek_nested_table as table of ornekType;
create or replace function ornekFonksiyon return Ornek_nested_table as
temp_tab Ornek_nested_table;
begin
temp_tab:= Ornek_nested_table();
temp_tab.extend;
temp_tab (temp_tab.count) := ornekType(1, 'Ahmet');
temp_tab.extend;
temp_tab (temp_tab.count) := ornekType(2, 'Ayşe');
temp_tab.extend;
temp_tab (temp_tab.count) := ornekType(3, 'Hasan');
return temp_tab;
end ornekFonksiyon;
select * from table(ornekFonksiyon);
1 Ahmet
2 Ayşe
3 Hasan
Fonksiyonun parametreli hali.Fonksiyona kaydın id’si parametre ile verilerek kaydın getirilmesi
create or replace function ornekFonksiyon2(
personel_id in number
)
return Ornek_nested_table as
temp_tab Ornek_nested_table;
begin
select
cast(
multiset(
select
id, name
from
personel
where id= personel_id)
into
temp_tab
from
dual;
return temp_tab;
end ornekFonksiyon2;
Sql'i bu şekilde olur.Sonucu "1 Ahmet"
select * from table(ornekFonksiyon2(1));
Hiç yorum yok:
Yorum Gönder