Mikä on PL / SQL-lohko?
PL / SQL: ssä koodia ei suoriteta yksirivimuodossa, mutta se suoritetaan aina ryhmittelemällä koodi yhdeksi lohkoiksi kutsutuksi elementiksi. Tässä opetusohjelmassa opit näistä lohkoista.
Lohkot sisältävät sekä PL / SQL: n että SQL-käskyt. Kaikki nämä käskyt suoritetaan kokonaisuutena pikemminkin kuin yhden käskyn suorittaminen kerrallaan.
Tässä opetusohjelmassa opit:
- Mikä on PL / SQL-lohko?
- Lohkon rakenne
- PL / SQL-estosyntaksi
- PL / SQL-lohkon tyypit
Lohkon rakenne
PL / SQL-lohkoilla on ennalta määritelty rakenne, johon koodi on tarkoitus ryhmitellä. Alla on PL / SQL-lohkojen eri osiot.
- Ilmoitusosio
- Suoritusosa
- Poikkeus-käsittely-osio
Seuraava kuva kuvaa erilaista PL / SQL-lohkoa ja niiden osajärjestystä.
Julistusosio
Tämä on PL / SQL-lohkojen ensimmäinen osa. Tämä osa on valinnainen osa. Tässä osiossa ilmoitetaan lohkossa tarvittavien muuttujien, kohdistinten, poikkeusten, alaohjelmien, pragma-ohjeiden ja kokoelmien ilmoitus. Alla on muutamia tämän osan ominaisuuksia.
- Tämä osa on valinnainen ja se voidaan ohittaa, jos ilmoituksia ei tarvita.
- Tämän pitäisi olla PL / SQL-lohkon ensimmäinen osa, jos sellainen on.
- Tämä osa alkaa avainsanalla 'DECLARE' laukaisijoille ja anonyymille estolle. Muissa alaohjelmissa tätä avainsanaa ei ole. Sen sijaan osaohjelman nimen määrityksen jälkeen oleva osa merkitsee ilmoitusosion.
- Tämän osan tulisi aina seurata suoritusosaa.
Suoritusosio
Suoritusosa on tärkein ja pakollinen osa, joka tosiasiallisesti suorittaa sen sisään kirjoitetun koodin. Koska PL / SQL odottaa suoritettavia käskyjä tältä lohkolta, tämä ei voi olla tyhjä lohko, eli siinä tulisi olla ainakin yksi kelvollinen suoritettava koodirivi. Alla on muutamia tämän osan ominaisuuksia.
- Tämä voi sisältää sekä PL / SQL-koodin että SQL-koodin.
- Tämä voi sisältää yhden tai useita lohkoja sen sisällä sisäkkäisenä lohkona.
- Tämä osio alkaa avainsanalla 'BEGIN'.
- Tämän osan jälkeen tulee olla joko Loppu tai Poikkeus-käsittely-osio (jos sellainen on)
Poikkeuksia käsittelevä osio:
Poikkeusta ei voida välttää ajon aikana tapahtuvassa ohjelmassa, ja tämän Oracle on käsitellyt poikkeuksia käsittelevän osan lohkoina. Tämä osio voi sisältää myös PL / SQL-käskyjä. Tämä on valinnainen osa PL / SQL-lohkoista.
- Tässä osassa käsitellään suorituslohkossa nostettua poikkeusta.
- Tämä osio on PL / SQL-lohkon viimeinen osa.
- Tämän osan hallinta ei voi koskaan palata suorituslohkoon.
- Tämä osio alkaa avainsanalla 'EXCEPTION'.
- Tämän osan jälkeen tulee aina olla avainsana 'END'.
Avainsana END merkitsee PL / SQL-lohkon loppua.
PL / SQL-estosyntaksi
Alla on PL / SQL-lohkorakenteen syntaksit.
DECLARE --optionalBEGIN --mandatory EXCEPTION --optional END; --mandatory/
Huomaa: Lohkoa tulisi aina seurata '/', joka lähettää tiedot kääntäjälle lohkon lopusta.
PL / SQL-lohkon tyypit
PL / SQL-lohkot ovat pääasiassa kahden tyyppisiä.
- Nimetön estot
- Nimetty lohkot
Nimetön estot:
Anonyymit lohkot ovat PL / SQL-lohkoja, joille ei ole määritetty nimiä. Ne on luotava ja käytettävä samassa istunnossa, koska niitä ei tallenneta palvelimelle tietokantaobjekteina.
Koska heidän ei tarvitse tallentaa tietokantaan, he eivät tarvitse kääntövaiheita. Ne kirjoitetaan ja suoritetaan suoraan, ja kokoaminen ja toteutus tapahtuu yhdessä prosessissa.
Alla on muutama muut nimetön lohkon ominaisuudet.
- Näille lohkoille ei ole määritetty viitenimeä.
- Nämä lohkot alkavat avainsanalla 'ILMOITA' tai 'BEGIN'.
- Koska näillä lohkoilla ei ole mitään viitenimeä, niitä ei voida tallentaa myöhempää käyttöä varten. Ne luodaan ja toteutetaan samassa istunnossa.
- He voivat soittaa muille nimetyille lohkoille, mutta kutsuminen nimettömään estoon ei ole mahdollista, koska sillä ei ole mitään viitteitä.
- Siinä voi olla sisäkkäinen lohko, joka voi olla nimetty tai tuntematon. Se voidaan myös sijoittaa mihin tahansa lohkoon.
- Näillä lohkoilla voi olla kaikki lohkon kolme osaa, joissa suoritusosa on pakollinen, kaksi muuta osaa ovat valinnaisia.
Nimetyt lohkot:
Nimetyillä lohkoilla on niille erityinen ja yksilöllinen nimi. Ne tallennetaan tietokantaobjekteina palvelimelle. Koska ne ovat käytettävissä tietokantaobjekteina, niihin voidaan viitata tai niitä voidaan käyttää niin kauan kuin niitä on palvelimessa. Nimettyjen lohkojen kokoamisprosessi tapahtuu erikseen samalla, kun ne luodaan tietokantaobjekteina.
Alla on muutama nimettyjen lohkojen ominaisuus.
- Näitä lohkoja voidaan kutsua muista lohkoista.
- Lohkorakenne on sama kuin nimetön lohko, paitsi että se ei koskaan ala avainsanalla 'DECLARE'. Sen sijaan se alkaa avainsanalla "CREATE", joka kehottaa kääntäjää luomaan sen tietokantaobjektina.
- Nämä lohkot voidaan sijoittaa muihin lohkoihin. Se voi sisältää myös sisäkkäisiä lohkoja.
- Nimettyjä lohkoja on periaatteessa kahta tyyppiä:
- Menettely
- Toiminto
Yhteenveto
Tämän opetusohjelman jälkeen sinun tulee olla tietoinen PL / SQL-lohkoista ja niiden tyypeistä, lohkojen eri osista ja niiden käytöstä. Nimettyjen PL / SQL-lohkojen yksityiskohtainen kuvaus käsitellään myöhemmässä opetusohjelmassa.