Vaate ja salvestatud protseduuri erinevus

Vaade vs salvestatud protseduur
 

Vaated ja salvestatud protseduurid on kahte tüüpi andmebaasi objektid. Vaated on omamoodi salvestatud päringud, mis koguvad andmeid ühest või enamast tabelist. Siin on vaate loomise süntaks

loo või asenda vaate vaate nimi

kui

vali_väide;

Salvestatud protseduur on eelkompileeritud SQL-käskude komplekt, mis salvestatakse andmebaasiserverisse. Igal salvestatud protseduuril on kutsunimi, mida kasutatakse nende kutsumiseks muudesse pakettidesse, protseduuridesse ja funktsioonidesse. See on süntaks (ORACLE-is) salvestatud protseduuri loomiseks,

protseduuri protseduuri nime loomine või asendamine (parameetrid)

on

alustada

avaldused;

erand

erand_käitlemine

lõpp;

Vaade

Vaade toimib virtuaalse tabelina. See peidab valitud lause oma kehas. See valitud lause võib olla väga keeruline, mis võtab andmeid mitmest tabelist ja vaatest. Teisisõnu on vaade nimega valitud avaldus, mis salvestatakse andmebaasi. Vaate abil saab tabelisuhete loogikat varjata lõppkasutajate eest. Kuna vaade on salvestatud päringu tulemus, ei säilita see andmeid. See kogub andmeid alustabelitest ja näitab. Vaatetel on oluline roll ka andmeturbes. Kui tabeli omanik peab lõppkasutajatele näitama ainult andmekogumit, on vaate loomine hea lahendus. Vaated võib jagada kahte kategooriasse

  • Uuendatavad vaated (vaated, mida saab kasutada sisestamiseks, värskendamiseks ja kustutamiseks)
  • Värskendamata vaated (vaated, mida ei saa kasutada INSERT, UPDATE ja DELETE jaoks)

Uuendatavad vaated ei tohi järgneda,

Operaatorite komplekt (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Grupi agregeeritud funktsioonid (AVG, COUNT, MAX, MIN, SUM jne)

Rühmitamine klausli järgi

TELLIMUS klausli järgi

ÜHENDAMINE klausli järgi

Alustage klausliga

Kollektsiooni väljendus valitud loendis

Alampäring valimisloendis

Liituge päringuga 

Salvestatud protseduur

Salvestatud protseduure nimetatakse programmeerimisplokkideks. Neil peab olema nimi, kellele helistada. Salvestatud protseduurid aktsepteerivad parameetreid kasutaja sisendina ja töötlevad vastavalt protseduuri taga olevale loogikale ning annavad tulemuse (või teevad konkreetse toimingu). Protseduuride korpuses võivad olla muutuvad deklaratsioonid, muutuvad määramised, juhtimisavaldused, silmused, SQL päringud ja muud funktsioonid / protseduuri- / pakettkõned. 

Mis on vahet Vaade ja salvestatud protseduur?

Vaatame nende kahe erinevusi.

• Vaated toimivad virtuaalsete tabelitena. Neid saab kasutada otse SQL-i päringutest (valige), kuid protseduure ei saa kasutada päringute sulgemisest alates.

• Vaadete põhiosa on ainult valitud avaldus, kuid protseduuridel võib olla põhiosa muutuja deklaratsioone, muutuja määramisi, juhtimisavaldusi, silmuseid, SQL päringuid ja muid funktsioone / protseduuri / pakettkõnesid..

• Protseduur aktsepteerib parameetreid täitmiseks, kuid vaated ei soovi parameetreid käivitada.

• Kirjetüüpe saab vaadetest luua, kasutades% ROWTYPE, kuid protseduure kasutades ei saa plaaditüüpe luua.

• SQL-i vihjeid saab kasutada vaatevaate väljavõtte sees täitmisplaani optimeerimiseks, kuid SQL-i vihjeid ei saa salvestatud protseduurides kasutada.

• Vaateid saab kustutada, sisestada, värskendada, valida, taastada ja siluda, kuid protseduuridele saab anda ainult rakendust EXECUTE ja DEBUG..