PLSQL Nedir ? (Kapsamlı) | Oracle PL/SQL

PLSQL Hakkında | PLSQL Nedir

PLSQL  “Yapılandırılmış Sorgu Diline Yönelik Prosedürel Dil uzantıları” ( Procedural Language extensions to the Structured Query Language ) anlamına gelir. Şimdi gelin beraber PLSQL Nedir  sorumuzun cevabını alalım.

  •  Oracle veritabanında gömülü olan ve SQL’in kendisi ve Java ile birlikte üç ana programlama dilinden biridir. Bu eğitici yazı, oracle veritabanı ve diğer gelişmiş ilişkisel veri tabanı konseptleri ile devam edebilmeniz için, PLSQL konusunda size büyük bir anlayış kazandıracaktır.
  • SQL, ilişkisel veritabanı yönetim sistemlerinde (RDBMS: relational database management systems ) veri sorgulamak ve güncellemek için popüler ancak kısıtlı bir dildir. İşte PLSQL tam bu aşamada devreye girmektedir. Bazı SQL kısıtlarını aşmak için SQL diline birçok prosedürel yapı ekler. Ayrıca, Oracle Veritabanlarında kritik iş uygulamaları, Business Logic, İş Mantığı oluşturmak için daha kapsamlı bir programlama dili çözümü sunar.
  • Oldukça yapılandırılmış, devasa bir yapıya büründürülmüş, okunabilir bir dildir. Aşağıda inceleyeceğimiz PLSQL Yapıları, yazılan kodun amacını açıkça ifade eder.
  • Bu arada; Öğrenmesi kolay bir dildir.

Oracle PLSQL Nerelerde Kullanılır

  • Oracle database gelişimi için standart ve taşınabilir bir dildir. Bir Oracle Veritabanında çalışan bir program geliştirirseniz, herhangi bir değişiklik yapmadan hızlı bir şekilde başka bir uyumlu Oracle Veritabanına taşıyabilirsiniz.
  • Gömülü bir dildir. Yalnızca bir Oracle Veritabanında yürütülebilir. Java, C # ve C ++ gibi bağımsız bir dil olarak kullanılmak üzere tasarlanmamıştır.
  • Başka bir deyişle, Oracle Veritabanına sahip olmayan bir sistemde çalışan bir PLSQL programı geliştirilemez.
  • Android developer, IOS swift developer gibi meslekler PLSQL Developer mesleğinin, öteki bir evrende ikamet eden meslektaşlarıdır.
  • Yüksek performanslı ve yüksek derecede entegre bir veritabanı dilidir. PLSQL dışında, C # ve C ++ gibi diğer programlama dilleri ile başka başka şeyler yapıyor olabilirsiniz. Ancak, Oracle Database ile etkileşim söz konusu olduğunda, verimli kod yazmak diğer programlama dillerinden daha kolaydır. Özellikle, veritabanı performansını artırmaya yardımcı olan FORALL deyimi gibi PLSQL’e özgü yapıları kullanabilirsiniz.

 

  • BULK COLLECT : Tek bir alım ile birden fazla satır alan ve veri alma hızını artıran SELECT ifadeleridir.
  • FORALL: Çok sayıda veri satırını çok hızlı bir şekilde değiştirmek için koleksiyonları kullanan INSERT’ler, UPDATE’ler ve DELETE’lerdir.

 

Bir PLSQL Kodu Nasıl Çalıştırılır | Mimarisi | PLSQL Nedir

 

PLSQL Nedir, Oracle PLSQL Hakkında
PLSQL Nedir, Oracle PLSQL Hakkında

 

PLSQL engine, kodu byte koduna derlemekten sorumludur ve derlemeden sonra oluşan çalıştırılabilir bu byte kodu çalıştırır. Bu motor yalnızca bir Oracle Veritabanı sunucusuna veya Oracle Forms,  Oracle Apex gibi bir uygulama geliştirme aracına kurulabilir.

PLSQL nedir , nerelerde kullanılır başlıklarımızın ardından mimarisi ifade etmeye çalıştığım yazı ve resimde belirttiğim gibidir. Yani;

Oracle Database sunucusuna bir kod bloğu gönderdiğinizde, PLSQL engine, kodu derlemek ve yürütmek için SQL motoruyla birlikte çalışır. Bu motor prosedürel öğeleri çalıştırırken, SQL motoru ise SQL ifadelerini işler.

Ana özellikleri ile PLSQL Nedir

SQL dilinin veri sorgulama ve değiştirme gücünü, kendisinin fonksiyonel yaklaşımı ile birleştirir. Bu yaklaşımı anlamak için 2 farklı SQL sorgusu düşünün, eğer bir koşul doğruysa 1. SQL, yanlışsa 2. SQL çalışsın istiyorsak işte bu aşamada SQL ile PLSQL’in gücünü birleştirmemiz gerekiyordur. İçerisindeki IF ELSE THEN yapısı ile bunu kolaylıkla gerçekleştirebiliriz.

Daha karmaşık sorunlar düşünün; işte bu bütün sorunları yönetebilmemiz için parçalara ayırmamız gerekir. Yani PLSQL’in gücüne, prosedürel yaklaşımına ihtiyaç duyarız.

Şimdi birkaç yapıyı daha başlıkları ile verip inceleyelim.

Error Handling | Hata Yönetimi | PLSQL Nedir

Hata yönetimini oldukça anlaşılır bir şekilde yapmaktadır. Bir hata gerçekleştiğinde PLSQL kodu hemen bir hata fırlatır. Bunlar ORA hatalarıdır . Örneğin;

ORA-04030 Hatası : PGA AGGREGATE LIMIT Hatası

ORA-00932 Hatası : Veri tipleri uyuşmadığında aldığımız hatalardır.

ORA-00932 Hatası

Hatalar gördüğünüz “ORA-XXXXX”  formatındadır.  Bu hatalar dikkatle okunmalıdır ki doğru çözümleri bulabilelim.

Aynı zamanda kendi hatalarımızı da oluşturup bunlara isim verip istediğimiz koşullarda bize hata olarak dönmesini saylayabiliriz. Hata yönetimi konusunda detaylı bilgi için TIKLAYIN.

Blocks | Bloklar | PLSQL Nedir

Bir blok DECLARE, BEGIN, EXCEPTION ve END yapılarından oluşur. Declare içerisinde parametrelerimizi declare ederiz. Begin içerisinde kodlarımızı yazarız. Exception içerisinde ise hatalarımızı tanımlar ve yönetiriz. End bloğu ise bloğumuzun bittiğini ifade eder.

Bu bloklar iç içe tanımlanabilir.

PLSQL Declare yapısı için buraya göz atabilirsiniz.

Constants ve Variables | Değişkenler ve Sabitler | PLSQL Nedir

Diğer programlama dillerinde olduğu gibi bize sabit veya değişkenler tanımlama ve bunları kod blokları içerisinde kullanabilme imkanını verir. Değişkenler kod bloğu içerisinde değiştirilebilir. Ancak sabitler değiştirilemez.

PLSQL Değişkenler ve Sabitler için buraya göz atabilirsiniz.

Subprograms | Alt Programlar | PLSQL Nedir

Bir alt program, ihtiyacımız dahilinde devamlı çağırabildiğimiz bir kod bloğudur. Bu bir fonksiyon veya prosedür olabilir. Bir ağırlıklı ortalama işlemi gerçekleştiren bir fonksiyon düşünün. Birçok yerde bu işlemi uygulamak için oluşturduğunuz fonksiyonu çağırmanız gerekebilir. Fonksiyon ve prosedürler, tekrar tekrar aynı işlemi yazmak yerine, bir kere yazıp bu işlemi devamlı çağırabileceğimiz altprogramlardır.

Ayrıntılı bilgi için göz atabilirsiniz.

Packages | Paketler | PLSQL Nedir

Bir paket içerisinde fonksiyonları, procedureleri, tipleri, sabit veya değişkenleri, cursorları, hataları barındıran bir şema objesidir.

Oracle Users and Schema hakkında bilgi için yazımı inceleyebilirsiniz.

Bir paket bir uygulama gibidir. Tabiki kendi paketlerinizi yazabilirsiniz.

Paketler 2 aşamada oluşturulurlar. 1.si paket tanımının yani içerisinde kullanacağımız tüm yapıları inceden tanımlamak durumunda olduğumuz pakettir. Diğer kısmı ise paketin body yani gövde kısmıdır. Burası tüm kodlarımızı yazdığımız kısımdır.

Ayrıntılı bilgi için Oracle Documentation’a göz atabilirsiniz.

Triggers | Tetikleyiciler | PLSQL Nedir

Bir oracle veritabanında bir olay gerçekleşti ve siz bu olayın gerçekleşme anını devamlı izleyemiyorsunuz. Örneğin bir veri değiştirildi diyelim. Bu veri değiştirildiğinde ne gerçekleşmesini istiyorsanız, bunu bir trigger olarak tanımlamalısınız.

Bu sayede verilerinizde yapılan değişiklikleri, yani Update, Delete, Insert işlemlerini kolaylıkla yönetebileceğiniz yapılar Trigger’lardır.

 

PLSQL Nedir ? başlıklı Oracle yazımızın sonuna geldik.

Daha faydalı yazılarda görüşmek dileğiyle 🙂