Diferența Dintre Vizualizare și Procedură Stocată

Cuprins:

Diferența Dintre Vizualizare și Procedură Stocată
Diferența Dintre Vizualizare și Procedură Stocată

Video: Diferența Dintre Vizualizare și Procedură Stocată

Video: Diferența Dintre Vizualizare și Procedură Stocată
Video: SBC8-Cheltuieli și venituri-definire și caracterizare-Conf. univ. dr. Irimie Emil Popa 2024, Decembrie
Anonim

Vizualizare vs Procedură stocată

Vizualizările și procedurile stocate sunt două tipuri de obiecte de bază de date. Vizualizările sunt un fel de interogări stocate, care colectează date de la unul sau mai multe tabele. Iată sintaxa pentru a crea o vizualizare

creați sau înlocuiți numele vizualizării vizualizării

la fel de

select_statement;

O procedură stocată este un set de comenzi SQL pre-compilat, care este stocat în serverul de baze de date. Fiecare procedură stocată are un nume de apelare, care este folosit pentru a le apela în alte pachete, proceduri și funcții. Aceasta este sintaxa (în ORACLE) pentru a crea o procedură stocată, creați sau înlocuiți procedura procedurename (parametri)

este

începe

declarații;

excepție

manipulare_excepție

Sfârșit;

Vedere

O vizualizare acționează ca o masă virtuală. Ascunde o declarație selectă în corpul său. Această declarație selectă poate fi una foarte complexă, care preia date din mai multe tabele și vizualizări. Prin urmare, cu alte cuvinte, o vizualizare este o declarație selectată numită, care este stocată în baza de date. O vizualizare poate fi utilizată pentru a ascunde logica din spatele relațiilor de masă de la utilizatorii finali. Deoarece o vizualizare este rezultatul unei interogări stocate, nu păstrează niciun fel de date. Adună date din tabelele de bază și arată. Vizualizările joacă un rol important și în securitatea datelor. Când proprietarul mesei trebuie să afișeze doar un set de date utilizatorilor finali, crearea unei vizualizări este o soluție bună. Vizualizările pot fi împărțite în două categorii

  • Vizualizări actualizabile (Vizualizările pot fi utilizate pentru INSERT, UPDATE și DELETE)
  • Vizualizări care nu pot fi actualizate (vizualizările care nu pot fi utilizate pentru INSERT, UPDATE și DELETE)

Vizualizările actualizabile nu pot include urmări, Set Operatori (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Funcții agregate de grup (AVG, COUNT, MAX, MIN, SUM etc.)

GRUPA CU Clauza

COMANDĂ PRIN Clauză

CONNECT BY Clause

ÎNCEPE CU Clauza

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

Interogare secundară într-o listă selectată

Alăturați-vă interogării

Procedură stocată

Procedurile stocate sunt denumite blocuri de programare. Trebuie să aibă un nume de apelat. Procedurile stocate acceptă parametrii ca date de intrare și proces ale utilizatorului în conformitate cu logica din spatele procedurii și dau rezultatul (sau efectuează o acțiune specifică). Declarațiile variabile, atribuțiile variabile, instrucțiunile de control, buclele, interogările SQL și alte funcții / proceduri / apeluri pachet pot fi în corpul procedurilor.

Care este diferența dintre vizualizare și procedură stocată?

Să vedem diferențele dintre aceste două.

• Vizualizările acționează ca tabele virtuale. Ele pot fi utilizate direct din închiderea interogărilor SQL (selectați), dar procedurile nu pot fi utilizate în închiderea interogărilor.

• Vizualizările au doar o instrucțiune selectată ca corp, dar procedurile pot avea ca corp declarații variabile, atribuiri variabile, instrucțiuni de control, bucle, interogări SQL și alte funcții / proceduri / pachete.

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

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

• Sugestiile SQL pot fi utilizate în cadrul instrucțiunii de selectare a vizualizării, 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 în vizualizări, dar numai EXECUTE și DEBUG pot fi acordate în cadrul procedurilor.

Recomandat: