Diferența dintre vizualizare și procedura stocată

Anonim

View vs Procedure Stored

crează sau înlocuiesc numele de vizualizare

ca

select_statement;

O procedură stocată este un set de comandă SQL precompilat, care este stocat în serverul de bază de date. Fiecare procedură stocată are un nume de apel, care este folosit pentru a le apela în alte pachete, proceduri și funcții. Aceasta este sintaxa (în ORACLE) pentru a crea o procedură memorată, a crea sau a înlocui procedura procedurename (parametrii)

este

începe

declarații;

exception_handling

final excepție;

View

A View acționează ca o tabelă virtuală. Ascunde o instrucțiune selectată în interiorul corpului. Această instrucțiune selectată poate fi una foarte complexă, care ia date din mai multe tabele și vederi. Prin urmare, cu alte cuvinte, o vizualizare este o instrucțiune numită select, care este stocată în baza de date. O vizualizare poate fi folosită pentru a ascunde logica din spatele relațiilor de masă de la utilizatorii finali. Întrucât o vizualizare este rezultatul unei interogări stocate, aceasta nu păstrează niciun fel de date. Colectează date din tabelele și emisiunile de bază. Viziunile joacă un rol important și în securitatea datelor. Atunci când proprietarul tabelului trebuie să afișeze doar un set de date pentru utilizatorii finali, crearea unei vizualizări este o soluție bună. Vizitele pot fi împărțite în două categorii

->
  • Vizualizări actualizabile (Vizualizările pot fi utilizate pentru INSERT, UPDATE și DELETE)
  • Vizualizări non-actualizabile (Vizualizările nu pot fi utilizate pentru INSERT, UPDATE și DELETE)

Setări de operatori (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Funcții agregate grup (AVG, COUNT, MAX, MIN, > ORDER BY Clauza

CONNECT BY Clauza

START WITH Clauza

Exprimarea colecției într-o listă selectată

Sub interogare în A Select List

Alăturați interogare

numite blocuri de programare. Trebuie să aibă un nume de telefonat. Procedurile stocate acceptă parametrii ca intrări și procese ale utilizatorilor în funcție de logica din spatele procedurii și dau rezultatul (sau efectuează o acțiune specifică). Declarațiile variabile, asignările variabilelor, instrucțiunile de control, buclele, interogările SQL și alte apeluri de funcții / proceduri / pachete pot fi în interiorul procedurilor.

Care este diferența dintre

Vizualizare și procedura stocată

?

Să vedem diferențele dintre cele două. • Viziunile se comportă ca tabele virtuale. Acestea pot fi utilizate direct din interogările SQL (selectați), dar procedurile nu pot fi utilizate din închiderea interogărilor. • Vizualizările au doar o instrucțiune selectată ca și corpul lor, dar procedurile pot avea declarații variabile, asignări de variabile, instrucțiuni de control, bucle, interogări SQL și alte apeluri de funcții / proceduri / pachete ca corp.

• Procedura acceptă parametrii de executat, însă vizualizările nu doresc ca parametrii să fie executați.

• Tipurile de înregistrări pot fi create din vizualizări utilizând% ROWTYPE, dar folosind proceduri, tipurile de înregistrări nu pot fi create.

• Sugestiile SQL pot fi utilizate în interiorul instrucțiunii select pentru vizualizare, pentru a optimiza planul de execuție, dar sugestiile SQL nu pot fi utilizate în procedurile stocate.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK și DEBUG pot fi acordate pentru vizualizări, dar numai EXECUTE și DEBUG pot fi acordate în proceduri.