Основы (асослар)


Download 0.95 Mb.
bet24/58
Sana28.12.2022
Hajmi0.95 Mb.
#1011518
1   ...   20   21   22   23   24   25   26   27   ...   58
Bog'liq
PL-SQL Маъруза матни

Тўплам операторлари


Тўплам операторлари иккита сўров натижаларини битта натижага бирлаштиради. INTERSECT иккала сўров томонидан суғуриб олинган натижаларда қатнашган фарқли қаторларни қайтаради. MINUS биринчи сўров суғуриб олган лекин иккинчи сўров натижасида қатнашмаган фарқли қаторларни қайтаради. UNION иккала сўров томонидан суғуриб олинган фарқли қаторларни қайтаради. UNION ALL иккала сўров томонидан суғуриб олинган барча қаторларни қайтаради.

Қатор операторлари


ALL сўров натижасида такрорланувчи қаторларни қолдиради. DISTINCT сўров натижасидан такрорланувчи қаторларни чиқариб ташлайди.


Курсорларни бошқариш


PL/SQL икки хил турдаги курсорлардан фойдаланади: ошкор ва ошкормас.

Ошкор курсорлар


Агарда сўров натижаси биттадан кўп қаторларни қайтарса, сиз ошкор тарзда курсор эълон қилишингиз мумкин. Курсорларни бошқариш учун учта команда мавжуд: OPEN, FETCH, and CLOSE. OPEN жумласи орқали курсор сўров натижаси билан тўлдирилади. Сўнг FETCH жумласидан фойдаланиб биринчи қаторни олишингиз мумкин. Охирги қаторни олгандан сўнг CLOSE жумласи орқали курсорни ёпишингиз мумкин.

Курсорни эълон қилиш


Курсордан фойдаланишдан олдин уни қуйидаги синтаксис асосида эълон қилиш лозим:
CURSOR курсор_номи [(параметр[,параметр]...)]
[RETURN қайтариш_тури] IS select_жумласи;

бу ерда қайтариш_тури берилганлар базасидаги жадвал қатори ёки ёзуви ва параметр қуйидаги синтаксисга эга:


курсор_параметри_номи [IN] берилганлар_тури [{:= | DEFAULT} ифода]

Масалан c1 ва c2 деб номланган курсорларни қуйидагича эълон қилишингиз мумкин:


DECLARE
CURSOR c1 IS SELECT empno, ename, job, sal FROM emp
WHERE sal > 2000;
CURSOR c2 RETURN dept%ROWTYPE IS
SELECT * FROM dept WHERE deptno = 10;

Параметрли курсорларга мисол келтирамиз:


DECLARE
CURSOR c1 (low INTEGER DEFAULT 0,
high INTEGER DEFAULT 99) IS SELECT ...



Download 0.95 Mb.

Do'stlaringiz bilan baham:
1   ...   20   21   22   23   24   25   26   27   ...   58




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling