PL/SQL blokları içinde SELECT deyimi kullanılabilmesi için, SQL deyimlerinin aşağıda belirtilen yapıya sahip olması gerekmektedir.
SELECT sütun isimleri olmalı INTO (değişken adı veya kayıt adı olmalı} FROM tablo adı olmalı WHERE koşul olmalı;
Örnek1
hasta isimli tablodan hasta numarası 20090312 olan hastayı seçerek adını h_adi isimli bir değişken içine yerleştirmek istiyor olalım.
DECLARE h_adi VARCHAR2(30) ; BEGIN SELECT adi INTO h_adi FROM hasta WHERE personel_no=101; END;
Burada dikkat edilecek husus into kısmında yazılmış olan değişkenler değişkenler PL/SQL bloğununun DECLARE bölümünde tanımlanmış olmalıdır.
2. DML Deyimleri
INSERT:satır ekleme
UPDATE:güncelleme
DELETE:satır silme
Örnek 2
Veri tabanında yer alan hasta isimli tabloya bir kayıt eklemek istiyoruz.
DECLARE h_adi VARCHAR2(30) ; BEGIN SELECT adi INTO h_adi FROM hasta WHERE personel_no=101; END;
3. Harekettt
Deyimleri
Veri tabanı hareketlerinin başlaması için INSERT,UPDATE veya DELETE deyimlerinden birinin çalıştırılması yeterlidir. Bu şekilde başlayan bir işlemi sona erdirmek, yani değişiklikleri kalıcı hale getirmek ve sonuçları diğer kullanıcıların da görmesini sağlamak için COMMITdeyimini kullanıyoruz. Değişiklikleri geri almak için ise ROLLBACK deyimini tercih ediyoruz. Bu deyimleri PL/SQL blokları içinde de aynen kullanmak mümkündür.
Örnek 3
hasta tablosunda bir güncelleme "örneğin 1.08 lik kdv eklediğimizi farzedelim" yaptıktan sonra, bu sonucun diğer kullanıcıları da etkilemesini sağlamak için PL/SQL bloğuna COMMIT deyimini ekliyoruz.
DECLARE h_ucret_kdv NUMBER :=1.08; BEGIN UPDATE personel SET ucret=ucret*h_ucret WHERE hasta_no=20090301; COMMIT; END; /
PL/SQL İçinde Çalışan SQL Deyimleri konusunda anlatacağım bu kadar . örneklerle kendinizi geliştirebilirsiniz. Size iyi çalışmalar