Różnica między widokiem a procedurą przechowywaną

Zobacz vs procedura przechowywana
 

Widoki i procedury składowane to dwa typy obiektów bazy danych. Widoki są rodzajem przechowywanych zapytań, które zbierają dane z jednej lub więcej tabel. Oto składnia do utworzenia widoku

utwórz lub zastąp nazwę widoku widoku

tak jak

select_statement;

Procedura składowana to wstępnie skompilowany zestaw poleceń SQL, który jest przechowywany na serwerze bazy danych. Każda procedura przechowywana ma nazwę wywołującą, która służy do wywoływania ich w innych pakietach, procedurach i funkcjach. To jest składnia (w ORACLE), aby utworzyć procedurę składowaną,

utwórz lub zastąp procedurę nazwa procedury (parametry)

jest

zaczynać

sprawozdania;

wyjątek

Obsługa wyjątków

koniec;

Widok

Widok działa jak wirtualny stół. Kryje w sobie zaznaczoną instrukcję. Ta instrukcja select może być bardzo złożona, która pobiera dane z kilku tabel i widoków. Innymi słowy, widok jest nazwaną instrukcją select, która jest przechowywana w bazie danych. Widok może służyć do ukrywania logiki za relacjami w tabeli przed użytkownikami końcowymi. Ponieważ widok jest wynikiem zapisanego zapytania, nie przechowuje żadnych danych. Gromadzi dane z tabel podstawowych i pokazuje. Widoki odgrywają również ważną rolę w bezpieczeństwie danych. Gdy właściciel tabeli musi pokazywać użytkownikom tylko zestaw danych, dobrym rozwiązaniem jest utworzenie widoku. Widoki można podzielić na dwie kategorie

  • Widoki, które można aktualizować (widoki, których można użyć do INSERT, UPDATE i DELETE)
  • Widoki, których nie można aktualizować (widoków, których nie można użyć do INSERT, UPDATE i DELETE)

Aktualizowalne widoki nie mogą zawierać następujących elementów,

Ustaw operatory (INTERSECT, MINUS, UNION, UNION ALL)

ODRĘBNY

Funkcje agregujące grupy (AVG, COUNT, MAX, MIN, SUM itp.)

Klauzula GROUP BY

Klauzula ORDER BY

CONNECT BY Klauzula

Zacznij od klauzuli

Wyrażenie kolekcji na liście Select

Zapytanie podrzędne na liście A Select

Dołącz do zapytania 

Procedura składowana

Procedury przechowywane są nazywane blokami programowania. Muszą mieć nazwę, aby zadzwonić. Procedury przechowywane akceptują parametry jako dane wprowadzane przez użytkownika i przetwarzają zgodnie z logiką procedury i dają wynik (lub wykonują określone działanie). Deklaracje zmiennych, przypisania zmiennych, instrukcje sterujące, pętle, zapytania SQL i inne funkcje / wywołania procedur / pakietów mogą znajdować się w treści procedur. 

Jaka jest różnica pomiędzy Procedura przeglądania i przechowywania?

Zobaczmy różnice między nimi.

• Widoki działają jak wirtualne tabele. Można ich użyć bezpośrednio po zamknięciu zapytań SQL (wybierz), ale nie można użyć procedur po zamknięciu zapytań.

• Widoki mają tylko instrukcję select jako swoje ciało, ale procedury mogą zawierać deklaracje zmiennych, przypisania zmiennych, instrukcje sterujące, pętle, zapytania SQL i inne wywołania funkcji / procedur / pakietów.

• Procedura akceptuje parametry do wykonania, ale widoki nie chcą parametrów do wykonania.

• Typy rekordów można tworzyć z widoków przy użyciu% ROWTYPE, ale przy użyciu procedur nie można tworzyć typów rekordów.

• Podpowiedzi SQL można używać wewnątrz instrukcji select view, aby zoptymalizować plan wykonania, ale podpowiedzi SQL nie można używać w procedurach przechowywanych.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK i DEBUG można przyznać w widokach, ale tylko EXECUTE i DEBUG można przyznać w procedurach.