Reja: Paket spetsifikatsiyasi va tanani boshqarish Tetik tushunchalar va qo’llanilishi Tregger turlari Treggerni boshqarish mexanizimlari Dasturlarni boshlash pl\sql paketlari
PL/SQL paketlarining barqarorligi
Download 25.39 Kb.
|
3.1-Ma\'ruza
- Bu sahifa navigatsiya:
- Paketlarda PL/SQL yozuvlar jadvalidan foydalanish
PL/SQL paketlarining barqarorligi: Paketlar chaqirilishi bilanoq yuklanadi. O'zgaruvchilar UGA qismida joylashgan. Yuklangandan so'ng, ular sessiya davomida UGAda saqlanadi. Agar "PRAGMA SERIALLY_REUSABLE" iborasi ishlatilsa, dastur faqat chaqirilgan vaqt uchun xotiraga yuklanadi, keyin bu bo'sh joy bo'shatiladi. Agar biz xotira jihatidan cheklangan bo'lsak va sessiya davomida ochiq qolishimiz shart bo'lmasa foydali bo'ladi. Bundan tashqari, agar bizning ishimiz vaqtinchalik bo'lsa, biz paketlarimizda pragma ifodasini ishlatishimiz mumkin. "Pragma Serially_reusable" spetsifikatsiyasiga misol: PAKETI YARATING pkg1 IS PRAGMA SERIALLY_REUSABLE; NUMBER := 0; PROCEDURE init_pkg_state(n NUMBER); PROCEDURE print_pkg_state; END pkg1; / "Pragma Serially_reusable" korpusiga misol: PAKET MASASINI YARATING pkg1 IS PRAGMA SERIALLY_REUSABLE; PROCEDURE init_pkg_state (n NUMBER) IS BOSHLASH pkg1.num := n; OXIRI; PROCEDURE print_pkg_state IS BOSHLASH DBMS_OUTPUT.PUT_LINE('Son: ' || pkg1.num); OXIRI; END pkg1; / Pragma serially_reusable ham Body, ham Spec ta'riflarida qo'llaniladi. Ikkalasini ham ishlatish etarli emas. Paketlarda PL/SQL yozuvlar jadvalidan foydalanish: PL/SQL jadval tipidagi yozuvlardan foydalanish paketlarda ko'rsatilishi kerak bo'lgan jadvallardagi ustunlar asosida yaratiladigan jadvallar natijalarni vaqtincha saqlashini bildiradi. Bu ta'rifni misollarimizdan osonroq ko'rishimiz mumkin. Buning uchun avvalo paketimizda ushbu jadval turini aniqlashimiz kerak. PAKETNI YARATISH YOKI ALSHIRISh emp_pkg IS TYPE emp_table_type IS TABLE IS XODIMLAR JADVALI% QATLI INDEX BINARY INTEGER BO'YICHA; PROCEDURE get_employees(p_emps OUT emp_table_type); END emp_pkg; Yuqoridagi misolimizda emp_table_type nomli o'zgaruvchilar turi "xodimlar" jadvalining barcha ustunlari asosida yaratilgan. Keyin ushbu turdagi o'zgaruvchini qaytarish uchun protsedura yoziladi. Shunday qilib, ushbu protsedurada get_employees-dagi ishlar bajariladi. Keyin qiymatlar ushbu ishlarga muvofiq p_emps nomli o'zgaruvchiga tashlanadi. PAKET MASASI emp_pkg IS YARATISH YOKI ALSHIRISh
Biz yuqorida aytib o'tgan paketning asosiy qismida get_employees deb nomlangan protseduramiz tarkibini yaratamiz. Barcha ma'lumotlar "xodimlar" deb nomlangan jadvaldan olinadi va o'rnatiladi. Quyida ushbu paketdan qanday foydalanishga misol keltirilgan. E'lon qiling v_employees emp_pkg.emp_table_type; BOSHLASH emp_pkg.get_employees(v_employees); DBMS_OUTPUT.PUT_LINE('Emp 4: '||v_xodimlar(4).familiya); OXIRI; Misoldagi dasturda biz paketimizda aniqlagan jadval tipidagi o'zgaruvchini yaratamiz. keyin uni paketimizdagi get_employees protsedurasiga o'rnatamiz. Shunday qilib, biz jadvalimizni undagi qiymatlar bilan yaratamiz. Uni yaratgandan so'ng, biz xohlagan jadvalning indekslangan ma'lumotlarini olishimiz mumkin. Nazorat savollari: PL/SQL paketlari nima? Paketlarning xususiyatlari nima? PL/SQL paketlarining barqarorligi nima? Paketlarda modulliylik nima? Download 25.39 Kb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling