Näytä vs. tallennettu toimenpide
Näkymät ja tallennetut proseduurit ovat kahdenlaisia tietokantaobjekteja. Näkymät ovat tallennettuja kyselyitä, jotka keräävät tietoja yhdestä tai useammasta taulukosta. Tässä on syntaksi näkymän luomiseen
luo tai korvaa näkymän näkymän nimi
as
select_statement;
Tallennettu toimintosarja on valmiiksi käännetty SQL-komentosarja, joka tallennetaan tietokantapalvelimelle. Jokaisella tallennetulla toimintosarjalla on kutsuva nimi, jota käytetään kutsumaan niitä muissa paketeissa, proseduureissa ja funktioissa. Tämä on syntaksi (ORACLEssa) tallennetun proseduurin luomiseen, luo tai korvaa toimintosarjan nimi (parametrit)
on
aloita
lausunnot;
poikkeus
poikkeuksen_käsittely
loppu;
Katso
A View toimii virtuaalisena taulukkona. Se piilottaa valitun lausunnon kehoonsa. Tämä valintalause voi olla hyvin monimutkainen, ja se ottaa tietoja useista taulukoista ja näkymistä. Siksi toisin sanoen näkymä on nimetty select-lause, joka on tallennettu tietokantaan. Näkymän avulla voidaan piilottaa taulukkorelaatioiden takana oleva logiikka loppukäyttäjiltä. Koska näkymä on tulos tallennetusta kyselystä, se ei säilytä tietoja. Se kerää tietoja perustaulukoista ja näyttää. Näkymillä on tärkeä rooli myös tietoturvassa. Kun taulukon omistajan on näytettävä loppukäyttäjille vain joukko tietoja, näkymän luominen on hyvä ratkaisu. Näkymät voidaan jakaa kahteen luokkaan
- Päivitettävät näkymät (Näkymät, joita voidaan käyttää INSERT-, UPDATE- ja DELETE-toimintoihin)
- Ei-päivitettävät näkymät (Näkymät, joita ei voi käyttää INSERT-, UPDATE- ja DELETE-toimintoihin)
Päivitettävät näkymät eivät voi sisältää seuraavia, Aseta operaattorit (INTERSECT, MIUS, UNION, UNION ALL)
DISTINCT
Ryhmän koontifunktiot (AVG, COUNT, MAX, MIN, SUM jne.)
GROUP BY Clause
TILAUS lausekkeen mukaan
YHTEYS lausekkeella
ALOITA lausekkeella
Kokoelmalauseke valintaluettelossa
Alikysely valintaluettelossa
Liity kyselyyn
Tallennettu menettely
Tallennetut toiminnot on nimetty ohjelmointilohkoiksi. Heillä täytyy olla nimi, jolle he voivat soittaa. Tallennetut proseduurit hyväksyvät parametrit käyttäjän syötteeksi ja käsittelevät proseduurin taustalla olevan logiikan mukaisesti ja antavat tuloksen (tai suorittavat tietyn toiminnon). Muuttujien ilmoitukset, muuttujien määritykset, ohjauskäskyt, silmukat, SQL-kyselyt ja muut funktiot/proseduuri-/pakettikutsut voivat olla toimintosarjan sisällä.
Mitä eroa on katselu- ja tallennusmenettelyllä?
Katsotaanpa näiden kahden väliset erot.
• Näkymät toimivat virtuaalitaulukoina. Niitä voidaan käyttää suoraan SQL-kyselyiden sulkeutumisesta (select), mutta proseduureja ei voida käyttää kyselyjen lopusta.
• Näkymien runkotekstinä on vain select-lause, mutta proseduureilla voi olla Variable-määrittelyjä, muuttujien määrityksiä, ohjauskäskyjä, silmukoita, SQL-kyselyitä ja muita funktioita/proseduuri-/pakettikutsuja.
• Proseduuri hyväksyy suoritettavat parametrit, mutta näkymät eivät halua parametrien suoritettavan.
• Tietuetyyppejä voidaan luoda näkymistä käyttämällä % ROWTYPE, mutta menettelytapoja käyttämällä tietuetyyppejä ei voida luoda.
• SQL-vinkkejä voidaan käyttää näkymän valintalausekkeen sisällä suoritussuunnitelman optimoimiseksi, mutta SQL-vinkkejä ei voi käyttää tallennetuissa proseduureissa.
• POISTA, LISÄÄ, PÄIVITYS, VALITSE, PALAUTUS ja DEBUG voidaan myöntää näkymille, mutta vain SUORITA ja DEBUG voidaan myöntää toimenpiteille.