Dzisiaj o tym ostatnim. Po co są widoki w bazach ? Widok jest wirtualną tabelą która pozwala bardziej zabezpieczyć dane, przyspieszyć wyciąganie danych i przede wszystkim ukryć złożoność bazy przed użytkownikiem. W normalnym zastosowaniu widoki służą do wyświetlania danych z bieżącej bazy. A co powiesz na to:
Baza Test:
Tabela A
Widok A
Procedura initA
Procedura initA - kasuje tabele A,
a nastepnie wykonuje:
Insert Into tabela A
Select * from Widok A
po tym dzieje się cud i pojawiają się dane w tabeli A.
Jak?
3 komentarze:
Widok zapewne nie jest podpięty pod to pod co powinien ...
moze jaki Cache ???
"SELECT *"....view don't get rebuilt automatically.
Best practice is to code like "select col1, col2, col3, col4, etc from mytable" ???
micr0 ma racje w tym przypadku, projektant bazy nazwal widok w "niekonwencjonalny" sposob tzn.
widok A wcale nie wyswietlal danych tabeli A ale dane z zewnetrznych baz.
Pytanie jednak co daje taka konstrukcja?
Insert into tabelaA
Select from widokA
Wg mnie nazwa widoku jest co najmniej nie odpowiednia, ale poza tym jeśli w wielu miejscach np w procedurze ma być to używane to chyba nie jest zły pomysł.
a to z cachem "Select *" zdarzyło mi się kilka razy :)
Prześlij komentarz