Razlika između pogleda i pohranjene procedure

Sadržaj:

Razlika između pogleda i pohranjene procedure
Razlika između pogleda i pohranjene procedure

Video: Razlika između pogleda i pohranjene procedure

Video: Razlika između pogleda i pohranjene procedure
Video: Kakva je razlika između deformacije valgusa i varusa 2024, Studeni
Anonim

Pogled nasuprot pohranjenoj proceduri

Pogledi i pohranjene procedure dvije su vrste objekata baze podataka. Pogledi su vrsta pohranjenih upita koji prikupljaju podatke iz jedne ili više tablica. Ovdje je sintaksa za stvaranje prikaza

stvori ili zamijeni ime pogleda

kao

select_statement;

Pohranjena procedura je unaprijed kompilirani skup SQL naredbi, koji je pohranjen na poslužitelju baze podataka. Svaka pohranjena procedura ima pozivno ime koje se koristi za pozivanje unutar drugih paketa, procedura i funkcija. Ovo je sintaksa (u ORACLE-u) za stvaranje pohranjene procedure, kreiraj ili zamijeni ime procedure procedure (parametri)

je

početak

izjave;

iznimka

rukovanje_iznimkama

kraj;

Pogled

Pogled djeluje kao virtualni stol. U svom tijelu skriva naredbu odabira. Ova izjava odabira može biti vrlo složena, koja uzima podatke iz nekoliko tablica i prikaza. Stoga, drugim riječima, pogled je imenovana izjava odabira, koja je pohranjena u bazi podataka. Pogled se može koristiti za skrivanje logike iza odnosa tablice od krajnjih korisnika. Budući da je pogled rezultat pohranjenog upita, on ne čuva nikakve podatke. Prikuplja podatke iz osnovnih tablica i prikazuje. Pogledi također igraju važnu ulogu u sigurnosti podataka. Kada vlasnik tablice treba pokazati samo skup podataka krajnjim korisnicima, stvaranje prikaza je dobro rješenje. Prikazi se mogu podijeliti u dvije kategorije

  • Prikazi koji se mogu ažurirati (Prikazi koji se mogu koristiti za INSERT, UPDATE i DELETE)
  • Prikazi koji se ne mogu ažurirati (Prikazi koji se ne mogu koristiti za INSERT, UPDATE i DELETE)

Prikazi koji se mogu ažurirati ne mogu uključivati sljedeće, Operatori skupa (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Grupne agregatne funkcije (AVG, COUNT, MAX, MIN, SUM, itd.)

GROUP BY klauzula

Klauzula ORDER BY

Klauzula CONNECT BY

START WITH klauzula

Izraz zbirke na popisu odabira

Podupit na popisu odabira

Upit za pridruživanje

Pohranjeni postupak

Pohranjene procedure nazivaju se programskim blokovima. Moraju imati ime za poziv. Pohranjene procedure prihvaćaju parametre kao korisnički unos i obrađuju ih prema logici koja stoji iza procedure i daju rezultat (ili izvode određenu radnju). Deklaracije varijabli, dodjele varijabli, kontrolne izjave, petlje, SQL upiti i drugi pozivi funkcija/procedura/paketa mogu biti unutar tijela procedura.

Koja je razlika između pogleda i pohranjene procedure?

Da vidimo razlike između ova dva.

• Pogledi djeluju kao virtualne tablice. Mogu se koristiti izravno od zatvaranja SQL upita (odaberi), ali se procedure ne mogu koristiti od zatvaranja upita.

• Pogledi imaju samo naredbu odabira kao tijelo, ali procedure mogu imati deklaracije varijabli, dodjele varijabli, kontrolne izjave, petlje, SQL upite i druge pozive funkcija/procedura/paketa kao tijelo.

• Procedura prihvaća parametre za izvršenje, ali pogledi ne žele da se parametri izvrše.

• Vrste zapisa mogu se kreirati iz pogleda koristeći % ROWTYPE, ali korištenjem procedura, vrste zapisa se ne mogu kreirati.

• SQL savjeti se mogu koristiti unutar iskaza odabira prikaza, za optimizaciju plana izvršenja, ali SQL savjeti se ne mogu koristiti u pohranjenim procedurama.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK i DEBUG mogu se odobriti na pogledima, ali samo EXECUTE i DEBUG mogu se odobriti na procedurama.

Preporučeni: