• CREATE VIEW v_student AS SELECT student1.name, groups.name AS gr_name FROM student1, groups WHERE student1.id_group = groups.id_group
  • Kursorni FOR operatori bilan qo‘llash
  • Hozirgi kunda inson faoliyatida ma’lumotlar bazasi (MB) kerakli




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

    DBMS_OUTPUT.put_line(v_empno ||' '|| v_name); 
    END LOOP; 
    CLOSE empcur; 
    –––4: kursorni yopish 
    END; 
    Misol–2 
    Declare 


    CURSOR cur(gr NUMBER :=20) IS 
    SELECT * FROM student1 WHERE id_group = gr; 
    i cur%ROWTYPE; 
    BEGIN 
    OPEN cur(2); 
    LOOP 
    FETCH cur INTO i; 
    EXIT WHEN cur%NOTFOUND; 
    DBMS_OUTPUT.PUT_LINE(i.name||chr(9)||i.id_group); 
    END LOOP; 
    CLOSE students; 
    END; 
    Natija: 
    Axmedov 

    Azimov 

    Misol–3. Guruh nomiga ko‘ra guruh talabalari haqidagi ma’lumotlarni 
    aniqlovchi kursor yarating. 
    Bu misolda guruh va talabalar jadvalidan ma’lumotlarni olish talab 
    etilmoqda. Ikkala jadvaldan ma’lumot olib kursor yaratish uchun avval 
    ushbu ikktala jadvaldan ma’lumotlarni o‘qib oluvchi ko‘rinish (view) 
    yaratishimiz zarur. Bu bizga natijada bitta virtual jadval asosida kursor 
    yaratish imkonini beradi. 
    CREATE VIEW v_student AS
    SELECT student1.name, groups.name AS gr_name
    FROM student1, groups
    WHERE student1.id_group = groups.id_group
     
    SELECT * FROM v_student 
    Natija: 
    Kursorni yaratish: 
    DECLARE 


    Cursor students(gr VARCHAR2) IS 
    SELECT * FROM v_student WHERE gr_name = gr; 
    i students%ROWTYPE; 
    ––kursorning har bir satri uchun %ROW tipidan foydalanildi 
    BEGIN 
    OPEN students('AT–30'); 
    LOOP 
    FETCH students into i; 
    EXIT WHEN students%NOTFOUND; 
    DBMS_OUTPUT.PUT_LINE(i.name||chr(9)||i.gr_name); 
    END LOOP; 
    CLOSE students; 
    END; 
    Kursorni FOR operatori bilan qo‘llash: 
    Declare 
    CURSOR cur2(gr NUMBER :=2) IS 
    SELECT * FROM student1 WHERE id_group = gr; 
    BEGIN 
    FOR i IN cur2(2) LOOP 
    DBMS_OUTPUT.PUT_LINE(i.name||chr(9)||i.id_group); 
    END LOOP; 
    END; 

    Download 1,78 Mb.
    1   ...   47   48   49   50   51   52   53   54   ...   62




    Download 1,78 Mb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Hozirgi kunda inson faoliyatida ma’lumotlar bazasi (MB) kerakli

    Download 1,78 Mb.
    Pdf ko'rish