Home / MAKALELER / Programlama / PL/SQL Yazı Dizisi

PL/SQL Yazı Dizisi

İnternette dolaşırken PL/SQL üzerine kaliteli birçok makale gördüm.Ama bunların belli bir sıra ile takip etmemesi ve çıktılarının olmaması okunabilirliği azaltan faktörler olarak görüyorum.Bundan yola çıkarak PL/SQL yapısını anlatan ve bolca örneklerini göreceğimiz bir yazı dizisi hazırlamak istedim.

 PL/SQL nedir,neden kullanılır ?

PL/SQL  yapısal dillere ait özelliklerin SQL’e eklenmesiyle ortaya çıkan Oracle’a has bir dildir.İstemci-sunucu ortamları tasarlama ile ağ üzerindeki dağıtık işlemler yapma ve transactionlar çalıştırma imkanı sunmaktadır.PL/SQL kullanarak her türlü SQL cümleciğini yazabilirsiniz.Dinamik SQL ifadeleri oluşturup,çalıştırabilirsiniz.PL/SQL programları genellikle veritabanında saklanırlar.Bu nedenle sorguların istemciden veritabanına gönderilmesi ve tekrar istemciye gönderilmesine gerek yoktur.Böylecilikle ağ trafiğini de azaltmış olur.

PL/SQL  Yapısal Özellikler

PL/SQL, SQL cümlelerine blok yapılarının,şart cümlelerinin,dögülerin v.b diğer özelliklerin eklenmesiyle oluşmuş bir dildir.En temel yapı birimi bloktur.Bir veya birden fazla bloktan oluşabilirler.Akış kontrolü sayesinde yapısal dillere ait olan şart cümleleri ve döngüler PL/SQL bloklarında kullanılabilir.Böylece yazılan programlar çok etkin ve hızlı hale gelmektedir.Eğer bu özellik olmasaydı SQL cümlelerini ayrı ayrı yazmak ve çalıştırmak gerekecekti.Bu da performansı arttıran etkenlerden birtanesidir.

Blok Yapısı

Birbirleriyle ilişkili ifadelerin mantıksal bölümlere ayrılması demektir.Değişken tanımlamaları ve hata kontrolleride her blok içerisinde yapılabilir.PL/SQL blok yapısı 3 bölümden oluşur

1-Bildirim Deyimleri

2-Program Komutları

3-Aykırı durumlar

Bu üç bölümden sadece ikincisi zorunludur. Klasik bir PL/SQL blok yapısı şu şekildedir.

 

[ Declare

–bildirim deyimleri(tanımlamalar)

BEGIN

–program komutları

[EXCEPTION

–aykırı durumlar

END;

Şimdide bu ifadede geçen komutları kısaca tanıyalım

  • Declare ; Blok içerisinde kullanılan değişkenlerin tanımlandığı bölümdür.
  • Begin    ; Bloğun başlangıcını belirten rezerve isimdir
  • Exception ;Aykırı durumların başlangıcını belirten rezerve isimdir.Hata durumlarında neler yapılacağını belirtir.
  • End ; Bloğun sonunu belirten rezerve isimdir

 

Örnek bir blok yapısı şu şekildedir.

DECLARE

personel_no    NUMBER (3)    := 400;

personel_adi   VARCHAR2 (20);

BEGIN

SELECT first_name

INTO personel_adi

FROM hr.employees

WHERE employee_id = personel_no;

EXCEPTION

WHEN OTHERS

THEN

DBMS_OUTPUT.put_line (‘Böyle bir personelimiz bulunmamaktadir’);

END;

Başka bir örnek olarak personelimizin maaşlarına %40 zam yapan bir PL/SQL blogu yazalım

DECLARE

zam_miktari   NUMBER := 0.4;

BEGIN

UPDATE hr.employees

SET salary = salary * (1 + zam_miktari)

WHERE employee_id = 104;

— calistirmadan once 6000 olan personelimizin maasi calistirdiktan sonra 8400 olmustur

END;

 

Bu makalemizde  genel PL/SQL mantığını anlatmaya çalıştım.Bir sonraki makalede Procedure ve Fonksiyon’ları irdelemek için tekrar buluşmak üzere.

About Yusuf Arslan

Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünü bitirdikten sonra kariyerine Datawarehouse-Database Uzmanı olarak devam etmektedir Sitenin kurucusu ve yazarıdır. yusufarslanbm@gmail.com adresinden bana ulaşabilirsiniz.

İlginizi Çekebilir

SQL Server ile Veri Şifreleme

Bilgi teknolojilerinde verinin güvenliği çok kritik bir öneme sahiptir. Önemli verileri korumak için ekstra bir …

Bir Cevap Yazın