Razlika između pregleda i pohranjene procedure

Sadržaj:

Razlika između pregleda i pohranjene procedure
Razlika između pregleda i pohranjene procedure

Video: Razlika između pregleda i pohranjene procedure

Video: Razlika između pregleda i pohranjene procedure
Video: Objašnjenje i razlika između SAY, TELL, SPEAK i TALK na engleskom jeziku 2024, Juli
Anonim

Pregled vs pohranjene procedure

Pregledi i pohranjene procedure su dvije vrste objekata baze podataka. Pregledi su vrsta pohranjenih upita, koji prikupljaju podatke iz jedne ili više tabela. Ovdje je sintaksa za kreiranje pogleda

kreiraj ili zameni ime prikaza

kao

select_statement;

Skladištena procedura je unaprijed kompajlirani SQL skup naredbi, koji je pohranjen u poslužitelju baze podataka. Svaka pohranjena procedura ima pozivno ime koje se koristi za njihovo pozivanje unutar drugih paketa, procedura i funkcija. Ovo je sintaksa (u ORACLE-u) za kreiranje pohranjene procedure, kreirajte ili zamijenite proceduru naziv procedure (parametri)

je

početak

izjave;

izuzetak

exception_handling

end;

Pogledaj

A View se ponaša kao virtuelna tabela. Sakriva naredbu za odabir unutar svog tijela. Ova izjava za odabir može biti vrlo složena, koja uzima podatke iz nekoliko tabela i pogleda. Dakle, drugim riječima, pogled je imenovani naredba za odabir, koja se pohranjuje u bazi podataka. Pogled se može koristiti za skrivanje logike iza odnosa tablice od krajnjih korisnika. Pošto je pogled rezultat pohranjenog upita, on ne čuva nikakve podatke. Prikuplja podatke iz osnovnih tabela i prikazuje. Pregledi takođe igraju važnu ulogu u sigurnosti podataka. Kada vlasnik tabele treba da pokaže samo skup podataka krajnjim korisnicima, kreiranje pogleda je dobro rešenje. Pregledi se mogu podijeliti u dvije kategorije

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

Pregledi koji se mogu ažurirati ne mogu uključivati sljedeće, Set operatora (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

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

GRUPA PO klauzuli

PORUČI PO klauzuli

POVEZIVANJE PO klauzuli

POČNITE SA klauzulom

Izraz kolekcije na listi za odabir

Podupit na listi A za odabir

Pridruži se upitu

Skladištena procedura

Skladištene procedure se nazivaju programski blokovi. Moraju imati ime koje mogu nazvati. Pohranjene procedure prihvataju parametre kao korisnički unos i obrađuju u skladu sa logikom iza procedure i daju rezultat (ili izvode određenu radnju). Deklaracije varijabli, dodjele varijabli, kontrolni izrazi, petlje, SQL upiti i drugi pozivi funkcija/procedura/paketa mogu biti unutar tijela procedura.

Koja je razlika između pregleda i pohranjene procedure?

Da vidimo razlike između ova dva.

• Pogledi se ponašaju kao virtuelne tabele. Mogu se koristiti direktno u zatvaranju SQL upita (odaberite), ali procedure se ne mogu koristiti nakon zatvaranja upita.

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

• Procedura prihvata parametre za izvršenje, ali pogledi ne žele da se parametri izvršavaju.

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

• SQL nagovještaji se mogu koristiti unutar naredbe za odabir pogleda, za optimizaciju plana izvršenja, ali SQL savjeti se ne mogu koristiti u pohranjenim procedurama.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK i DEBUG se mogu odobriti na pogledima, ali samo EXECUTE i DEBUG mogu biti odobreni za procedure.

Preporučuje se: