Widoki: Tworzenie i usuwanie widoków w SQL cz. I
Widok (ang View) to tak naprawdę zwykła tabela „wirtualna”, którą tworzymy za pośrednictwem normalnego zapytania. Z widoku korzystamy jak ze zwykłej tabeli, możemy więc wykonywać „na nim” dowolne kwerendy. Jest jednak pewna różnica w stosunku do dotychczas używanych tabel. Mianowicie widoki do póki nie zostanie utworzony dla nich indeks nie mają fizycznej reprezentacji swoich danych.
Weźmy tabelę klienci
:
ID | Imie | Nazwisko | Miasto |
1 | Jan | Kowalski | Warszawa |
2 | Michał | Łagoda | Kraków |
3 | Marcin | Kulczyk | Kraków |
4 | Radosław | Sikorski | Kraków |
5 | Monika | Kopacz | Gdańsk |
6 | Piotr | Grabiec | Toruń |
7 | Ewa | Pogodna | Bydgoszcz |
8 | Sebastian | Szybki | Warszawa |
Aby ją „wyświetlić” w SQL musimy wywołać taką kwerendę:
SELECT * FROM klienci;
Tworzenie widoku
Powyższą operację wykonaliśmy na fizycznej tabeli. Stwórzmy na jej bazie widok. Aby to zrobić należy przed napisaną już kwerendą zamieścić taką instrukcję:
CREATE VIEW widok AS
Gdzie widok
to dowolna nazwa widoku. Poniżej zamieszczam cały kod:
CREATE VIEW widok AS SELECT * FROM klienci;
Po uruchomieniu tego zapytania powinniśmy otrzymać informację o pomyślnie przeprowadzonej modyfikacji bazy danych.
Aby się upewnić, że wszystko zostało poprawnie wykonane możemy wyświetlić nasz widok:
SELECT * FROM widok;
Gdzie oczywiście widok
, to nazwa widoku podana przez nas wcześniej.
Teraz powinniśmy jeszcze raz zobaczyć całą tabelę klienci
.
ID | Imie | Nazwisko | Miasto |
1 | Jan | Kowalski | Warszawa |
2 | Michał | Łagoda | Kraków |
3 | Marcin | Kulczyk | Kraków |
4 | Radosław | Sikorski | Kraków |
5 | Monika | Kopacz | Gdańsk |
6 | Piotr | Grabiec | Toruń |
7 | Ewa | Pogodna | Bydgoszcz |
8 | Sebastian | Szybki | Warszawa |
Widok możemy utworzyć również z wybranych kolumn.
Usuwanie widoku
Wcześniej utworzony widok możemy w prosty sposób usunąć:
DROP VIEW widok;
Gdzie widok
, to nazwa widoku podana przez nas wcześniej.
UWAGA
Przy tworzeniu widoków nie można używać klauzuli ORDER BY! Jeżeli potrzebujemy posortowane dane, należy operację tą wykonać posługując się już stworzonym widokiem.
Bardzo przydatne informacje, zabrakło mi tu tylko konstrukcji polecenia dot. modyfikacji widoku, dziękuję bardzo!
ALTER VIEW widok;
Można też zastosować polecenie CREATE or ALTER VIEW widok – do tworzenia i późniejszej modyfikacji.
Dziekuję za upowszechnienie nam tak waznych i przydatnych informacji!