PL / SQL bloğu nedir?
PL / SQL'de, kod tek satır formatında yürütülmez, ancak her zaman kod Bloklar adı verilen tek bir eleman halinde gruplanarak yürütülür. Bu eğitimde, bu bloklar hakkında bilgi edineceksiniz.
Bloklar hem PL / SQL hem de SQL talimatı içerir. Tüm bu komutlar, bir seferde tek bir komutu yürütmek yerine, bir bütün olarak yürütülecektir.
Bu eğitimde şunları öğreneceksiniz:
- PL / SQL bloğu nedir?
- Blok Yapısı
- PL / SQL Blok Sözdizimi
- PL / SQL bloğu türleri
Blok Yapısı
PL / SQL blokları, kodun gruplanacağı önceden tanımlanmış bir yapıya sahiptir. Aşağıda PL / SQL bloklarının farklı bölümleri bulunmaktadır.
- Beyanname bölümü
- Yürütme bölümü
- İstisna İşleme bölümü
Aşağıdaki resim, farklı PL / SQL bloğunu ve bunların bölüm sırasını göstermektedir.
Beyanname Bölümü
Bu, PL / SQL bloklarının ilk bölümüdür. Bu bölüm isteğe bağlı bir bölümdür. Blokta ihtiyaç duyulan değişkenlerin, imleçlerin, istisnaların, alt programların, pragma komutlarının ve koleksiyonların bildirimlerinin açıklanacağı bölümdür. Aşağıda bu bölümün birkaç özelliği daha var.
- Bu belirli bölüm isteğe bağlıdır ve bildirim gerekmiyorsa atlanabilir.
- Bu, varsa PL / SQL bloğundaki ilk bölüm olmalıdır.
- Bu bölüm, tetikleyiciler ve anonim blok için 'DECLARE' anahtar kelimesiyle başlar. Diğer alt programlar için bu anahtar kelime bulunmayacaktır. Bunun yerine, alt program adı tanımından sonraki kısım bildirim bölümünü işaretler.
- Bu bölümü her zaman yürütme bölümü takip etmelidir.
Yürütme Bölümü
Yürütme kısmı, içinde yazılan kodu fiilen çalıştıran ana ve zorunlu kısımdır. PL / SQL çalıştırılabilir ifadeleri bu bloktan beklediğinden, bu boş bir blok olamaz, yani içinde en az bir geçerli çalıştırılabilir kod satırına sahip olmalıdır. Aşağıda bu bölümün birkaç özelliği daha var.
- Bu hem PL / SQL kodunu hem de SQL kodunu içerebilir.
- Bu, iç içe geçmiş bir blok olarak içinde bir veya daha fazla blok içerebilir.
- Bu bölüm 'BEGIN' anahtar kelimesiyle başlar.
- Bu bölümün ardından 'SON' veya İstisna İşleme bölümü (varsa) gelmelidir
İstisna İşleme Bölümü:
İstisna, çalışma zamanında meydana gelen programda kaçınılmazdır ve bu Oracle, bloklar halinde bir İstisna işleme bölümü sağlamıştır. Bu bölüm ayrıca PL / SQL ifadeleri içerebilir. Bu, PL / SQL bloklarının isteğe bağlı bir bölümüdür.
- Bu, yürütme bloğunda ortaya çıkan istisnanın işlendiği bölümdür.
- Bu bölüm, PL / SQL bloğunun son kısmıdır.
- Bu bölümden kontrol hiçbir zaman yürütme bloğuna geri dönemez.
- Bu bölüm 'EXCEPTION' anahtar kelimesiyle başlar.
- Bu bölümün ardından her zaman 'END' anahtar sözcüğü gelmelidir.
Anahtar Kelime 'END' PL / SQL bloğunun sonunu gösterir.
PL / SQL Blok Sözdizimi
PL / SQL blok yapısının sözdizimi aşağıdadır.
DECLARE --optionalBEGIN --mandatory EXCEPTION --optional END; --mandatory/
Not: Bir bloğun ardından her zaman bloğun sonuyla ilgili bilgileri derleyiciye gönderen '/' gelmelidir.
PL / SQL bloğu türleri
PL / SQL blokları esas olarak iki türdendir.
- Anonim bloklar
- Adlandırılmış Bloklar
Anonim bloklar:
Anonim bloklar, kendilerine herhangi bir isim atanmamış PL / SQL bloklarıdır. Sunucuda veritabanı nesneleri olarak depolanmayacakları için aynı oturumda oluşturulmaları ve kullanılmaları gerekir.
Veritabanında saklanmaları gerekmediğinden, derleme adımlarına ihtiyaç duymazlar. Doğrudan yazılır ve yürütülür ve derleme ve yürütme tek bir süreçte gerçekleşir.
Aşağıda Anonim blokların birkaç özelliği daha var.
- Bu bloklar için herhangi bir referans adı belirtilmez.
- Bu bloklar 'DECLARE' veya 'BEGIN' anahtar kelimesiyle başlar.
- Bu blokların herhangi bir referans adı olmadığından, bunlar daha sonra kullanılmak üzere saklanamaz. Aynı oturumda oluşturulacak ve uygulanacaktır.
- Diğer adlandırılmış blokları çağırabilirler, ancak herhangi bir referansı olmadığı için anonim bloğa çağrı yapmak mümkün değildir.
- Adlandırılabilen veya anonim olabilen iç içe bloklara sahip olabilir. Ayrıca herhangi bir bloğun içine yerleştirilebilir.
- Bu bloklar, yürütme bölümünün zorunlu olduğu bloğun üç bölümüne de sahip olabilir, diğer iki bölüm isteğe bağlıdır.
Adlandırılmış bloklar:
Adlandırılmış blokların kendilerine özgü ve benzersiz bir adı vardır. Sunucuda veritabanı nesneleri olarak saklanırlar. Veritabanı nesneleri olarak mevcut olduklarından, sunucuda mevcut oldukları sürece bunlara atıfta bulunulabilir veya kullanılabilirler. Adlandırılmış bloklar için derleme işlemi, onları bir veritabanı nesneleri olarak oluştururken ayrı ayrı gerçekleşir.
Aşağıda, Adlandırılmış blokların birkaç özelliği daha bulunmaktadır.
- Bu bloklar diğer bloklardan çağrılabilir.
- Blok yapısı anonim bir blok ile aynıdır, ancak hiçbir zaman 'DECLARE' anahtar kelimesiyle başlamaz. Bunun yerine, derleyiciye onu bir veritabanı nesnesi olarak yaratması talimatını veren 'CREATE' anahtar sözcüğü ile başlayacaktır.
- Bu bloklar diğer blokların içine yerleştirilebilir. İç içe geçmiş bloklar da içerebilir.
- Adlandırılmış bloklar temelde iki türdendir:
- Prosedür
- Fonksiyon
Özet
Bu eğitimden sonra, PL / SQL blokları ve türleri, blokların farklı bölümleri ve kullanımları hakkında bilgi sahibi olmalısınız. Adlandırılmış PL / SQL bloklarının ayrıntılı açıklaması sonraki eğitimde ele alınacaktır.