| Termin | Definicja |
|---|---|
| Widok | Widok to zapisane zapytanie prezentowane jako wirtualna tabela, bez fizycznego przechowywania danych. Widok jako logiczna tabelaWidok w relacyjnej bazie danych jest nazwanym zapytaniem, które można wykorzystywać podobnie jak tabelę. Nie przechowuje własnych kopii wszystkich wyników, lecz opisuje sposób ich wyznaczenia na podstawie tabel bazowych, innych widoków albo dozwolonych wyrażeń zapytania. Gdy aplikacja lub użytkownik odczytuje widok, silnik bazy danych analizuje jego definicję i pobiera dane zgodnie z zapisanymi warunkami. Wynik zapytania ma strukturę kolumn i wierszy, dlatego może być używany w kolejnych zapytaniach, raportach oraz instrukcjach łączących dane z innych obiektów. Widok może ograniczać liczbę zwracanych kolumn, filtrować wiersze za pomocą warunku Definicja, składnia i użycie w zapytaniachWidok tworzy się instrukcją właściwą dla danego silnika bazy danych, najczęściej w postaci Po utworzeniu widok odczytuje się podobnie jak tabelę, na przykład przez Wydajność widoku zależy przede wszystkim od zapytania, na którym został oparty, rozmiaru tabel, dostępnych indeksów, warunków filtrowania oraz planu wykonania wybranego przez silnik. Sam fakt użycia widoku nie gwarantuje przyspieszenia operacji. Zagnieżdżanie wielu widoków, stosowanie funkcji na kolumnach używanych do filtrowania lub łączenie dużych zbiorów bez odpowiednich warunków może zwiększyć koszt odczytu. W praktyce analizuje się plan wykonania zapytania korzystającego z widoku, a nie tylko krótką definicję samego obiektu. Modyfikowanie danych przez widokNiektóre widoki pozwalają nie tylko czytać dane, lecz także wykonywać operacje Widok zawierający Przy zapisie przez widok obowiązują ograniczenia tabel bazowych, w tym typy danych, klucze, więzy integralności i ograniczenia Uprawnienia, utrzymanie i diagnostykaWidok może służyć do kontrolowania zakresu danych udostępnianych użytkownikom lub aplikacjom. Administrator nadaje uprawnienia do widoku, a użytkownik korzysta z przygotowanego interfejsu zamiast otrzymywać bezpośredni dostęp do wszystkich tabel. Taki model upraszcza użycie danych i może ograniczyć przypadkowe odczytywanie niepotrzebnych kolumn, ale jego szczegóły zależą od mechanizmu uprawnień oraz sposobu rozwiązywania odwołań przez konkretny silnik. Sama definicja widoku nie zastępuje prawidłowej konfiguracji kont i uprawnień. Podczas diagnostyki problemu z widokiem należy sprawdzić jego aktualną definicję, zależności od tabel i innych widoków, typy kolumn oraz komunikat zwracany przez silnik. Częstą przyczyną awarii jest zmiana nazwy kolumny, usunięcie tabeli, zmiana typu danych albo dodanie niejednoznacznej nazwy w zapytaniu. Warto również uruchomić zapytanie bazowe niezależnie od widoku i porównać jego wynik z oczekiwanym rezultatem. Jeżeli odczyt jest powolny, pomocne jest sprawdzenie planu wykonania, liczby przetwarzanych wierszy i warunków użycia indeksów. Widok zwykły należy odróżnić od widoku materializowanego. Widok materializowany przechowuje wcześniej wyliczony rezultat lub jego reprezentację i wymaga odświeżania, aby odzwierciedlać zmiany w źródłach. Może ograniczyć koszt powtarzanych obliczeń, ale wprowadza opóźnienie między zmianą danych a aktualizacją wyniku oraz dodatkowe wymagania dotyczące miejsca na dysku i harmonogramu odświeżania. Przy planowaniu naprawy problemu z widokiem trzeba więc ustalić, czy chodzi o zwykłe zapytanie logiczne, czy o konkretny mechanizm materializacji dostępny w używanym systemie. |