• Nazorat savollari
  • Natija:  Maximum of (23,45): 45 PL/SQL procedure successfully completed. Rekursiv funksiyalarni yaratish




    Download 1,78 Mb.
    Pdf ko'rish
    bet54/62
    Sana03.02.2024
    Hajmi1,78 Mb.
    #150970
    1   ...   50   51   52   53   54   55   56   57   ...   62
    Bog'liq
    Методичка Маълумотлар ва билимлар банки 2

    Natija: 
    Maximum of (23,45): 45
    PL/SQL procedure successfully completed.
    Rekursiv funksiyalarni yaratish 
    DECLARE
    num number;
    factorial number;
    FUNCTION fact(x number)
    RETURN number
    IS
    f number;
    BEGIN
    IF x=0 THEN
    f := 1;
    ELSE
    f := x * fact(x–1);
    END IF;
    RETURN f;
    END;
    BEGIN


    num:= 6;
    factorial := fact(num);
    DBMS_OUTPUT.PUT_LINE(' Factorial '|| num || ' is ' || factorial);
    END;
    Factorial 6 is 720
    PL/SQL procedure successfully completed. 
    Nazorat savollari 
    1. Kursor haqida tushuncha va uning turlari qanday? 
    2. Kursorlarda qanday fetch operatori bor? 
    3. Kursorlarda for operatori qanday? 
    4. Aniqlanmagan kursorlar bilan qanday ishlanadi? 
    5. Funksiya nima va undan qanday foydalanish mumkin? 
    6. Protsedura nima va undan qanday foydalanish mumkin? 
     
    12-LABORATORIYA ISHI 
     
     
     
    PL/SQL. Paketlar. Triggerlar bilan ishlash 
    Ishdan maqsad: ketma-ketliklar, paketlar va triggerlar yaratish va 
    ulardan foydalanishni o‘rganish. 
    Topshiriqlar: 
    1. DDL buyrug‘idan foydalanib, mySequence1 ketma-ketligini 
    yarating. Ushbu ketma-ketlik 100 raqami bilan boshlanib, 10 ga karrali 
    qiymatlar bilan doimiy ravishda o‘sishi kerak. Boshqa ketma-ketlik 
    parametrlari uchun standart qiymatlarni qoldiring. 
    2. schema_name.pkgFamily deb nomlangan paketni yarating, bu paket 
    o‘zida fSalary funksiyasini va pSalary protsedurasini saqlasin. Funksiya 
    xodimning (o‘qituvchining) raqamini kirish parametri sifatida qabul qilishi 
    va bu xodimning ish haqini qaytarishi kerak. Protsedura esa xodimning 
    raqamiga ko‘ra, xodimning yangi ish haqi miqdorini aniqlasin. Protsedura 
    xodim uchun yangi ish haqini o‘zlashtirishi kerak. 
    3. Kafedra nomi, o‘qituvchining familiyasi, ismi, lavozimi va raqami 
    ko‘rsatilgan ko‘rinish yarating. 
    Ushbu ko‘rinish uchun DML operatsiyalari quyidagi qoidalarni 
    o‘rnating: 
    INSERT – O‘qituvchiga kafedrani tayinlang. Natijada, jadval 
    yangilanadi. 
    UPDATE – o‘qituvchiga tayinlangan kafedrani o‘zgartiring. 


    DELETE – Xodim uchun bo‘lim identifikatorini o‘chiring (xodim hech 
    qanday bo‘limga yozilmagan). Natijada, id_kafedra NULL sifatida 
    o‘rnatiladi. 
    Yuqoridagi qoidalarni amalga oshiruvchi va hosil qilingan ko‘rinishda 
    DML operatsiyalarini to‘g‘ri bajarishga imkon beruvchi trigger yarating. 
    Protsedura uchun kiruvchi ma’lumotlar – o‘qituvchining ismi, lavozimi 
    va kafedraning nomi. 
    Eslatma: 
    1) Ko‘rinish yaratish; 
    2) Har bir amal uchun jadvalga 1 ta trigger yarating, trigger ichida 
    tekshruvni amalga oshiramiz: IF INSERTING THEN ... ELSIF UPDATING 
    THEN ... ELSIF DELETING THEN ... END IF; 
    3) Protsedura va triggerlarni yarating; 
    4. “PL/SQL. Paketlar. Triggerlar bilan ishlash” hisobotini tayyorlang; 
    5. Nazorat savollariga javob berib, laboratoriya ishini himoya qiling. 

    Download 1,78 Mb.
    1   ...   50   51   52   53   54   55   56   57   ...   62




    Download 1,78 Mb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Natija:  Maximum of (23,45): 45 PL/SQL procedure successfully completed. Rekursiv funksiyalarni yaratish

    Download 1,78 Mb.
    Pdf ko'rish