PL/SQL dasturlash tilini o‘rganishni boshlaymiz. Boshlang‘ich ma’lumotlar bilan tanishdingiz, uning ishlashini ham ko‘rib chiqdingiz, endi asosiy tushunchalar va dastlabki protsedurani tuzamiz.

Bu til bir tomondan Pascal tiligi o‘xshab ketadi, bu degani pascalni biroz bilsangiz, siz uchun bu tilni o‘rganish qiyinchilik tug‘dirmaydi. Registr haqida yozadigan bo‘lsam, bu tilda katta – kichik harflarning farqi yo‘q(“a” bilan ”A” bir hil), lekin kelishilgan holda, operatorlarni katta harflarda yozishga qaror qildim. Pascal kabi, barcha operatorlarning tugashi “;” simvoli bilan tugaydi. Keling dastlab, PL/SQL dasturlash tiliga oid maxsus simvollar bilan tanishib chiqamiz.

Arifmetik amallar:

+       qo‘shish amali
       ayirish amali
*       ko‘paytirish amali
/       bo‘lish amali
**     darajaga ko‘tarish amali.

Logik operatorlar:

=      tenglik belgisi
<      kichik belgisi
>      katta belgisi
<>   teng emas belgisi
!=     teng emas(alternativa) belgisi
~=    teng emas(alternativa) belgisi
^=    teng emas(alternativa) belgisi
<=   kichik yoki teng belgisi
>=   katta yoki teng belgisi

Boshqa simvollar

:=    qiymat berish
(       ro‘yxat yoki amallar boshi
)       ro‘yxat yoki amallar oxiri
,       alohida element
..     diapazon belgilash

Kommentariya va metkalar

      bir qatorli kommentariya
/*     ko‘p qatorli kommentariyani boshlanishi
*/     ko‘p qatorli kommentariyani tugashi
>>   metkani boshlanishi
<<   metkani oxiri

PL/SQL dasturlash tili ma’lum bir struktura sosida tuziladi.

DECLARE
— e’lon qilish bloki
BEGIN
— bajariluvchi blok
EXCEPTION
— xatolarni aniqlovchi blok
END;
/ — kompilyatsiya qilish uchun yakunlovchi simvol

Declare qismi bo‘lmasligi ham mumkin. Bu dasturchining qay tarzda dastur tuzishiga bog‘liq. Demak, dastlabki dasturni(har doimgiday Hello World ) tuzamiz. Uning uchun Oraclening SQL*PLUS utilitasini ochamiz va quyidagilarni u yerga yozamiz:

SET SERVEROUTPUT ON
BEGIN
DBMS_OUTPUT.enable;
DBMS_OUTPUT.put_line(‘Hello World!!!’);
END;
/

Shu qismda dastur tugaydi. Enter tugmasini bossangiz, natija chiqadi.

Hello World!!!
PL/SQL procedure successfully completed

Dastlabki SGA xotiradagi protsedurani hosil qilganingiz bilan tabriklayman(sizning birinchi kursoringiz). Keling protsedurani tahlil qilib chiqamiz:

SET SERVEROUTPUT ON – protsedura yakunlangandan so‘ng(/), natijani darhol ekranga chiqarish kerakligini anglatadi(bu komanda bitta sssiya uchun bir marotaba berilsa kifoya).

BEGIN – protsedura boshlanmoqda.

DBMS_OUTPUT.enable – Ekranga chiqaradigan DBMS_OUTPUT paketi yoqilmoqda(bitta sessiya uchun bir marotaba yoqilsa, kifoya).

DBMS_OUTPUT.put_line(‘Hello World!!!’)DBMS_OUTPUT paketi ochilib, put_line metodi ishlatilmoqda va ekranga ‘Hello World!!!’ yozuvi chiqarilmoqda.

END – protsedura yakunlanmoqda.

/ — kodni ishlatmoqda.

Hello World!!! — natija

PL/SQL procedure successfully completed – protsedurani qanday yakunlangani haqida ma’lumot.

Ko‘rib turganingizdek, qiyin emas. SQL*PLUS muhitida quyidagi ko‘rinishda bo‘ladi.

1

Endi shu kodni “БЛОКНОТ”ga yozamiz va biror joyga saqlaymiz(misol uchun, D:\test.sql). So‘ng, bu kodni SQL*PLUS dan chaqirib ishlatamiz(@ belgisi bilan). Quyidagi ko‘rinishda bo‘ladi:

2

PL/SQL kodlarini ishlatishni 2 usuli ham ko‘rdingiz. Endi dastur orqali ishlatamiz. PL/SQL Developer dasturini o‘rnatamiz va yangi oyna ochib(FILE->NEW->SQL WINDOW) va SQL “вкладка”siga yuqoridagi kodni yozamiz(set serveroutput on yozuvini yozmaymiz, chunki natija sqlplusda chiqmaydi) va Ecexute komandasini bosamiz.

3

So‘ng natijani “Output” oynasida ko‘ramiz.

4

Siz yuqoridagi 3 xil usuldan birini tanlab, pl/sql dasturlash tilida dastur tuzishingiz mumkin. Ko‘pchilik dastlab, SQL*PLUS da dasturlashni boshlashadi, so‘ng PL/SQL Developerga o‘tishadi.