Sobes.tech
Middle

Kada se koriste eksplicitni i implicitni kursori?

sobes.tech АИ

Одговор од АИ

Јасни курсори се користе када је потребно прецизније контролисати обраду скупа редова из резултата упита. На пример, када је потребно ред по ред обрадити, извршити сложену логику или ажурирати податке у циклусу.

Непознати курсори се аутоматски креирају за сваки 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;