Sobes.tech
Middle

Kiedy używa się jawnych i niejawnych kursorów?

sobes.tech AI

Odpowiedź od AI

Czcionki jawne są używane, gdy konieczne jest bardziej precyzyjne kontrolowanie przetwarzania zestawu wierszy z wyniku zapytania. Na przykład, gdy konieczne jest kolejno przetwarzanie każdego wiersza, wykonywanie złożonej logiki lub aktualizacja danych w pętli.

Czcionki niejawne są automatycznie tworzone dla każdego zapytania SQL, które zwraca wynik (np. SELECT INTO). Są wygodne dla prostych operacji, gdy nie jest potrzebna etapowa kontrola nad wyborem.

Przykład użycia jawnego kursora w 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;
    -- przetwarzanie każdego wiersza
    DBMS_OUTPUT.PUT_LINE('Pracownik ' || v_emp_id || ': ' || v_salary);
  END LOOP;
  CLOSE c_emp;
END;