Sobes.tech
Middle

Kada naudojami aiškūs ir neaiškūs žymekliai?

sobes.tech AI

Atsakymas iš AI

Aiškieji kursoriai naudojami, kai reikia tiksliau kontroliuoti rezultatų eilutės apdorojimą. Pavyzdžiui, kai būtina nuosekliai apdoroti kiekvieną eilutę, atlikti sudėtingą logiką arba atnaujinti duomenis cikle.

Neskelbiami kursoriai automatiškai sukuriami kiekvienam SQL užklausos, kuri grąžina rezultatą (pavyzdžiui, SELECT INTO). Jie yra patogūs paprastoms operacijoms, kai nereikia žingsnis po žingsnio kontroliuoti atrankos.

PL/SQL pavyzdys, kaip naudoti aiškų kursorių:

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;
    -- kiekvienos eilutės apdorojimas
    DBMS_OUTPUT.PUT_LINE('Darbuotojas ' || v_emp_id || ': ' || v_salary);
  END LOOP;
  CLOSE c_emp;
END;