İçeriğe geç

Pl/Sql Koşullar

Spread the love

İf Koşulu

[sql]
DECLARE
n_number number:=5;
BEGIN
if n_number > 5 then
Dbms_output.put_line(‘Sayi 5”ten büyük’);
elsif n_number < 5 then
Dbms_output.put_line(‘Sayi 5”ten küçük’);
else
Dbms_output.put_line(‘Sayi 5”e eşit’);
end if;
EXCEPTION
when others then
Dbms_output.put_line(‘Hata Oluştu !!!’);
END;
[/sql]

Switch Case Yapısı

[sql]
BEGIN
CASE expression
WHEN result1 THEN
statements1
WHEN result2 THEN
statements2

ELSE
statements_else
END CASE;
EXCEPTION
when others then
Dbms_output.put_line(‘Hata Oluştu !!!’);
END;
[/sql]

GOTO Yapısı
plsql label’lar ile kodlar bloklar şeklinde yazılabiliyor.  Bu bloklara ulaşmak için goto yapısı kullanılır.  Aşağıdaki örnek ilk satıra goto findByPrimaryKeyyazılmasından dolayı  ilk olarak findByPrimaryKey labelindan devam edecektir.  findByPrimaryKey labelinin sonun goto yazdir yazilmasindan dolayı yazdir labelina gidecektir ve son bulacaktir.

[sql]
BEGIN
goto findByPrimaryKey;
<<findFolderInvoicesByStatus>>
v_status := ‘COMPLETED’;
v_type := ‘IN’;
t_Invoice := ih_findByStatus(v_status,v_type);
goto yazdir;
<<findByPrimaryKey>>
n_id :=817;
t_Invoice := ih_findByKey(n_id);
goto yazdir;

<<yazdir>>
for x in 1..t_InvoiceHeader.count loop
Dbms_output.put_line(‘x’ || t_InvoiceHeader(x).uuid);
end loop;
END;
[/sql]

Tarih:Oracle

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.