ORACLE – PL/SQL – PROSEDÜRLER
Merhabalar ,
Bu yazımda Oracle da prosedürler nasıl kullanılır hakkında yazacağım .
Store Procedure ler kısacası sql de birden fazla işlemin tanımlandığı ve yazılma amacına göre geriye değer döndüren veya döndürmeyen SQL objeleridir . SP ler giriş parametresi alabilir veya almayabilir , eğer giriş parametrelerine ilk değer ataması yapılmaz ise SP kullanıldığında giriş değerlerine değer atanması zorunlu olacaktır , yoksa hata alınır.
SP lerin içerisinde INSERT , UPDATE , SELECT işlermler yapılabilir , farklı SP ler çalıştırılabilir , bu işlemlerin hepsi veya 1 tanesini yapmak mümkündür geriye birden fazla Dataset döndürebilir (birden fazla tablo döndürebilir).
Bir Örnek ile Bir prosedür oluştutup kullanımını inceleyelim:
-- CREATE OR REPLACE PROCEDURE format_phone ( phone_no IN OUT VARCHAR2 ) AS BEGIN phone_no := '(' || SUBSTR(phone_no, 1, 3) || ')' || SUBSTR(phone_no, 4, 3) || '-' || SUBSTR(phone_no, 7); END format_phone; --
verdiğimiz telefon numarasını format a sokarak değiştiren prosedür.
Kullanımı :
-- DECLARE phone_no VARCHAR2(15) := '8006330575' EXECUTE format_phone(:phone_no) PRINT phone_no --
Çıktı :
Veya SELECT ile tablolar döndürebilir , updete ,insert işlemleri yapılabilir.
Örn:
-- CREATE OR REPLACE PROCEDURE sp_update_Salary ( ID NUMBER, New_Salary NUMBER ) AS BEGIN UPDATE Employees SET Salary = New_Salary where Employee_ID = ID; COMMIT; END sp_update_Salary; EXEC sp_update_Salary(1004 , 3000) --
Update işlemlerinde COMMIT komutu ile işlemleri gerçekleştirir.
Bu yazımızda Örneklerimiz şimdilik bu kadar ,
Umarım faydalı olmuştur , İyi çalışmalar 🙂 – Salih ŞEKER