| Termin | Definicja |
|---|---|
| Widok zamiast tabeli | Widok zamiast tabeli stosuje się, by ukryć złożoność struktury lub ograniczyć dostęp do danych źródłowych. Widok jako logiczna warstwa nad tabelamiWidok zamiast tabeli to obiekt logiczny bazy danych, który przechowuje definicję zapytania, a nie niezależny zestaw wierszy. Przy odczycie system wykonuje zapytanie zapisane w definicji widoku i zwraca wynik tak, jakby użytkownik odczytywał tabelę. W typowym widoku można umieścić kolumny pochodzące z jednej lub kilku tabel, zastosować warunek Przykładowa definicja może wyglądać następująco: Ograniczenie zakresu danych przez definicję widokuWidok może ograniczać liczbę zwracanych kolumn i wierszy. Jeżeli tabela zawiera pola techniczne, pomocnicze albo przeznaczone wyłącznie dla procesów wewnętrznych, definicja widoku może ich nie udostępniać. Podobnie warunek Uprawnienia do widoku są niezależnym elementem kontroli dostępu. W systemach obsługujących uprawnienia obiektowe można przyznać użytkownikowi prawo odczytu widoku, nie przyznając mu bezpośredniego prawa odczytu tabel bazowych. Rzeczywisty zakres ochrony zależy jednak od konkretnego silnika, konfiguracji właścicieli obiektów i sposobu sprawdzania uprawnień. Samo utworzenie widoku nie szyfruje danych, nie usuwa ich z tabeli i nie gwarantuje, że wszystkie zapytania wykonane przez aplikację będą korzystały wyłącznie z tego ograniczonego interfejsu. Zapytania, modyfikacje i koszty wykonaniaNie każdy widok może być używany do modyfikowania danych. Prosty widok oparty na jednej tabeli, bez agregacji, grupowania, operacji Zwykły widok nie jest automatycznie kopią danych. Jego zapytanie może być optymalizowane razem z zapytaniem nadrzędnym, a koszt wykonania zależy od indeksów, selektywności warunków, liczby łączonych tabel i planu zapytania. Jeżeli wielokrotnie wykonywane zapytanie wymaga zapisania wyniku, stosuje się materializowany widok, o ile dany silnik go obsługuje. Materializowany widok przechowuje wynik fizycznie, ale wymaga odświeżania, ponieważ po zmianie tabel źródłowych może zawierać dane nieaktualne. Nie należy więc traktować zwykłego widoku i materializowanego widoku jako zamiennych obiektów o takim samym zachowaniu. Sprawdzanie definicji i użycia widokuPrzy analizie problemu należy najpierw ustalić, z jakiego silnika bazy danych pochodzi widok, a następnie odczytać jego dokładną definicję z katalogu systemowego lub narzędzia administracyjnego tego produktu. Warto sprawdzić listę kolumn, typy danych, użyte połączenia, warunki filtrujące oraz zależności od tabel i innych widoków. Trzeba także porównać wynik widoku z tabelami źródłowymi, ponieważ brak rekordu może wynikać z warunku W środowisku laptopa lub komputera PC diagnostyka problemu z aplikacją korzystającą z widoku obejmuje sprawdzenie konfiguracji połączenia, nazwy schematu, konta użytkownika i komunikatu błędu zwróconego przez sterownik bazy danych. Nie należy usuwać widoku ani zmieniać tabel źródłowych bez kopii definicji i ustalenia zależności aplikacji. Bezpieczniejsza kolejność to odczyt definicji, wykonanie kontrolnego zapytania z ograniczeniem liczby rekordów, analiza planu wykonania zgodnie z możliwościami konkretnego silnika oraz dopiero później zaplanowanie zmiany uprawnień, indeksów lub samego zapytania. |