Middle
Кай вақтҳо курсорҳои равшан ва пинҳон истифода мешаванд?
sobes.tech AI
Ҷавоб аз AI
Ҳақиқий курсорлар, натижадан олинган қаторлар тўпламини янада аниқроқ назорат қилиш керак бўлганда ишлатилади. Масалан, ҳар бир қаторни навбатма-навбат ишлаш, мураккаб логика қилиш ёки маълумотларни циклда янгилаш зарур бўлса.
Намо'л курсорлар ҳар бир SQL-сўров учун автоматик равишда яратилади ва натижа қайтаришади (масалан, SELECT INTO). Улар оддий операциялар учун қулай, ва босқичма-босқич назорат талаб қилинмайдиган ҳолларда ишлатилади.
PL/SQLда очиқ курсордан фойдаланиш намунаси:
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;
-- ҳар бир қаторни ишлаш
DBMS_OUTPUT.PUT_LINE('Ходим ' || v_emp_id || ': ' || v_salary);
END LOOP;
CLOSE c_emp;
END;