ID: 1850 Bazy danych Trudne

Źródło: Arkusze CKE

Który z obiektów relacyjnej bazy danych, będący kodem języka SQL, może być wywoływany w zapytaniach modyfikujących kolumny danych widoczne jako tabela, bez względu na to czy jest tworzony programowo, czy dynamicznie?

Warianty odpowiedzi

  1. A

    Funkcja zdefiniowana

  2. B

    Reguła

  3. C

    Procedura składowa

  4. D

    Wyzwalacz

Wyjaśnienie

Chodzi tutaj o funkcję zdefiniowaną przez użytkownika (UDF - User-Defined Function). Funkcję w SQL możesz potraktować niemal dokładnie tak samo jak funkcję w języku programowania - przyjmuje argumenty i zwraca konkretny wynik lub tabelę.

Główna zaleta funkcji polega na tym, że możesz jej użyć bezpośrednio wewnątrz zapytania SQL, na przykład w SELECT, WHERE czy UPDATE. Działa dokładnie tak samo jak wbudowane funkcje bazodanowe, np. ROUND() czy UPPER().

Inne obiekty z odpowiedzi mają zupełnie inne zastosowanie. Procedury składowe musisz wywoływać osobnym poleceniem CALL lub EXEC i nie da się ich wpleść bezpośrednio w środek zapytania. Z kolei wyzwalacze (triggery) reagują automatycznie na zdarzenia w bazie i nie wywołujesz ich ręcznie w kodzie zapytania.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.03 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — Bazy danych