Middle
Qachon ochiq va yashirin kursorlar ishlatiladi?
sobes.tech AI
AIdan javob
Ochiq imleçlar, natijaviy so'rovdan olingan satrlar to'plamini yanada aniqroq nazorat qilish kerak bo'lganda ishlatiladi. Masalan, har bir satrni ketma-ket ishlash, murakkab mantiq qilish yoki ma'lumotlarni sikl ichida yangilash zarur bo'lsa.
Noma'lum imleçlar har bir SQL so'rovi uchun avtomatik ravishda yaratiladi va natija qaytaradi (masalan, SELECT INTO). Ular oddiy operatsiyalar uchun qulay, va tanlovni bosqichma-bosqich nazorat qilishga ehtiyoj bo'lmagan hollarda ishlatiladi.
PL/SQLda ochiq imleçdan foydalanish misoli:
DECLARE
CURSOR c_emp IS SELECT employee_id, salary FROM employees WHERE department_id = 10;
v_emp_id employees.employee_id%TYPE;
v_salary employees.salary%TYPE;
BEGIN
OPEN c_emp;
LOOP
FETCH c_emp INTO v_emp_id, v_salary;
EXIT WHEN c_emp%NOTFOUND;
-- har bir satrni ishlash
DBMS_OUTPUT.PUT_LINE('Xodim ' || v_emp_id || ': ' || v_salary);
END LOOP;
CLOSE c_emp;
END;