PL/SQL Programlama-2

Merhaba, PL/SQL yazılarına devam ediyorum .Bir önceki yazımı okumadıysanız öncelikle oradan başlamanızı tavsiye ederim. https://ittutorial.org/pl-sql-1/ . Bu yazıda PL/SQL’i biraz daha yakından tanıyacağız.

 

 

Basit(Anonim) Blok Yapısı:

Bu blok yapısınız genel de bir defalık kod çalıştırmalarında kullanırız. Diğer blok yapılarında göreceğimiz gibi veritabanında bir obje olarak saklanmazlar.

DECLARE

  • Değişkenler
  • Sabitler
  • İmleç
  • Hata Durumu

BEGIN

  • SQL kodu
  • PL/SQL kodu

EXCEPTION(Opsiyonel)

  • Hata Durumu

END;

DECLARE : Ram içinde tutacağımız geçici alanların tanımları yapılır

BEGIN-END: SQL ve PL/SQL kodlarının çalıştığı alandır, operatörler ve döngüler bu alanda kullanılır.

EXCEPTION: Oluşabilecek hata durumları yakalanır ve yapılması gerekenler yazılır.

Küçük bir örnek yapalım

 

 

 

 

SQL> DECLARE
sayi NUMBER;
isim varchar2(30);
BEGIN
sayi:=1;
isim:='Deniz Parlak';
DBMS_OUTPUT.PUT_LINE(isim ||' '||sayi);
END;
/

 

 

Görüldüğü gibi DBMS_OUTPUT.PUT_LINE fonksiyonu sayesinde(bu dilin hello world’ü ) ekrana değişkenlerimizin içeriklerini yazdırabildir.

Birde iç içe kullanım örneği yapalım.

SQL> DECLARE
isim varchar(20);
BEGIN
isim:='Yasar Kemal';
DECLARE
eser varchar2(20);
BEGIN
eser:='Ince Memed';
DBMS_OUTPUT.PUT_LINE(isim ||' '|| eser);
END;
END;
/



  

 

 

 

En basit şekilde bir PL/SQL örneği yapmış olduk. Bu yazıyı burada noktalıyorum, bir sonraki yazı da Fonksiyon ve Prosedür bloğundan devam edeceğim görüşmek üzere..

Deniz Parlak

Hi, I'm a Computer Engineering student in Dumlupınar University.I will graduate next year. I did an internship TurkNet Telecominication Company in 2018 June- 2018 September. I had experience Linux/Unix system, SQL Server Management , SSRS, Mysql Database Management,Troubleshooting performance issues in Linux. I also interested Oracle database and technologies. I want to work as Oracle DBA after my University. I am practicing Unix, Exadata, Orace Cloud, Oracle RAC, Dataguard, EBS, Oracle BI and etc and i hope the articles will be helpful. Any questions, or support please write email deniz.parlak@yahoo.com

Leave a Reply

Your email address will not be published. Required fields are marked *