Przejdź do głównej zawartości

Widoki

Widok (View) to “wirtualna tabela”, której zawartość jest zdefiniowana przez zapytanie. W przeciwieństwie do standardowej tabeli, widok sam w sobie nie przechowuje danych; zamiast tego zapisuje zapytanie SQL, które jest wykonywane dynamicznie za każdym razem, gdy uzyskujesz dostęp do widoku.

Widoki to potężne narzędzia do upraszczania pobierania złożonych danych, agregowania danych do raportów lub formatowania danych specjalnie do wykorzystania przez frontend bez zmiany podstawowej struktury bazy danych.

Aby utworzyć nowy widok:

  1. Na pasku bocznym Modelu Danych znajdź przycisk + Add Table (+ Dodaj Tabelę).
  2. Kliknij strzałkę listy rozwijanej obok niego.
  3. Wybierz Add View (Dodaj Widok).

alt text

  1. Wpisz Zapytanie: Wprowadź standardowe instrukcje SQL SELECT, aby zdefiniować, które kolumny i wiersze powinny pojawić się w widoku.
    • Przykład: SELECT first_name, email FROM students WHERE is_active = true;
  2. Uruchom/Testuj: Użyj przycisku Odtwórz (▶), aby wykonać zapytanie i natychmiast wyświetlić podgląd wyników w konsoli. Zapewnia to poprawność składni przed zapisaniem.

alt text

  1. Wpisz Nazwę: Unikalny identyfikator systemowy dla widoku. Ta nazwa będzie widoczna w Twoim API tak jak standardowa tabela (np. activeStudents).
  2. Wpisz Opis: Opcjonalne pole tekstowe do udokumentowania celu tego złożonego zapytania dla Twojego zespołu.
  3. Kliknij Save (Zapisz).

alt text

  • Bezpieczeństwo Danych: Utwórz widok, który udostępnia tylko pola publiczne (takie jak nazwiska), ukrywając jednocześnie pola wrażliwe (takie jak osobiste identyfikatory lub numery telefonów) przed określonymi odbiorcami API.
  • Uproszczenie: Wstępnie połącz wiele powiązanych tabel (np. Studenci + Kursy + Oceny) w jedną wirtualną tabelę, aby frontend mógł ją łatwo odpytywać bez skomplikowanej logiki.
  • Raportowanie: Użyj funkcji agregujących SQL (takich jak COUNT, AVG, SUM), aby utworzyć widok, który automatycznie pokazuje statystyki na żywo (np. “Całkowita Miesięczna Sprzedaż”).