Vaade vs salvestatud protseduur
Vaated ja salvestatud protseduurid on kahte tüüpi andmebaasiobjekte. Vaated on omamoodi salvestatud päringud, mis koguvad andmeid ühest või mitmest tabelist. Siin on vaate loomise süntaks
looge või asendage vaate nimi
as
select_statement;
Salvestatud protseduur on eelnevalt kompileeritud SQL-i käsukomplekt, mis salvestatakse andmebaasiserverisse. Igal salvestatud protseduuril on kutsunimi, mida kasutatakse nende kutsumiseks teiste pakettide, protseduuride ja funktsioonide sees. See on süntaks (ORACLE-is) salvestatud protseduuri loomiseks, luua või asendada protseduuri protseduurinimi (parameetrid)
on
algama
avaldused;
erand
erand_käsitsemine
lõpp;
Vaade
Vaade toimib virtuaalse tabelina. See peidab valitud lause oma keha sees. See valitud lause võib olla väga keeruline, mis võtab andmeid mitmest tabelist ja vaatest. Seetõttu on vaade nimeliselt valitud lause, mis on andmebaasi salvestatud. Vaadet saab kasutada tabeli seoste taga oleva loogika peitmiseks lõppkasutajate eest. Kuna vaade on salvestatud päringu tulemus, ei hoia see andmeid. See kogub andmeid põhitabelitest ja näitab. Vaatamistel on oluline roll ka andmeturvalisuses. Kui tabeli omanik peab lõppkasutajatele näitama ainult andmekogumit, on vaate loomine hea lahendus. Vaateid saab jagada kahte kategooriasse
- Värskendatavad vaated (vaated, mida saab kasutada INSERT, UPDATE ja DELETE jaoks)
- Värskendamatud vaated (vaated, mida ei saa kasutada rakenduste INSERT, UPDATE ja DELETE jaoks)
Värskendatavad vaated ei tohi sisaldada järgmisi andmeid, Komplektioperaatorid (INTERSECT, MINUS, UNION, UNION ALL)
ERISTAMA
Grupi koondfunktsioonid (AVG, COUNT, MAX, MIN, SUM jne)
RÜHMA JÄRGI klausel
TELLI KLAUS
ÜHENDA klausliga
Alustage klausliga
Kogu avaldis valitud loendis
Alampäring A-loendis
Liituge päringuga
Salvestatud protseduur
Salvestatud protseduure nimetatakse programmeerimisplokkideks. Neil peab olema helistamiseks nimi. Salvestatud protseduurid aktsepteerivad parameetreid kasutaja sisendina ja protsessina vastavalt protseduuri taga olevale loogikale ning annavad tulemuse (või sooritavad konkreetse toimingu). Muutujadeklaratsioonid, muutuja määramised, juhtlaused, tsüklid, SQL-päringud ja muud funktsioonid / protseduuri / pakettkõned võivad olla protseduuride kogu sees.
Mis vahe on vaate ja salvestatud protseduuri vahel? Vaatame nende kahe erinevusi. • Vaated toimivad virtuaalsete tabelitena. Neid saab kasutada otse SQL-i päringute sulgemisest (valige), kuid protseduure ei saa kasutada päringute sulgemisest. • Vaadete kehaks on ainult valitud lause, kuid protseduuride kehaks võib olla Muutujad deklaratsioonid, muutuja määramised, juhtlaused, tsüklid, SQL-päringud ja muud funktsioonid / protseduur / pakettkõned. • Protseduur aktsepteerib täitmiseks parameetreid, kuid vaated ei soovi parameetrite täitmist. • Kirjetüüpe saab luua vaadetest, kasutades% ROWTYPE, kuid protseduuride abil ei saa kirjetüüpe luua. • SQL-i näpunäiteid saab täitmisplaani optimeerimiseks kasutada vaate valimise sees, kuid SQL-i vihjeid ei saa salvestatud protseduurides kasutada. • Kustutamise, sisestamise, värskendamise, valimise, tagasiside ja DEBUGi saab anda vaadetele, kuid protseduuride korral saab anda ainult EXECUTE ja DEBUG. |