PL/SQL Anonymous Block

Summary: tässä opetusohjelmassa opit PL / SQL anonymous-blokista ja sen toteuttamisesta SQL*Plus-ja SQL Developer tools-työkaluilla.

PL/SQL anonymous block overview

PL/SQL on lohkorakenteinen kieli, jonka koodi on järjestetty lohkoihin. PL / SQL-lohko koostuu kolmesta osasta: ilmoitus -, suoritustiedosto-ja poikkeusten käsittely-osioista. Lohkossa suoritettava osio on pakollinen, kun taas ilmoitus-ja poikkeusten käsittelyosat ovat valinnaisia.

PL/SQL-lohkolla on nimi. Funktiot tai menettelytavat on esimerkki nimetystä lohkosta. Nimetty lohko tallennetaan Oraclen tietokantapalvelimeen ja sitä voidaan käyttää myöhemmin uudelleen.

nimetön lohko on nimetön lohko. Anonyymiä lohkoa ei tallenneta Oraclen tietokantapalvelimeen, joten se on vain kertakäyttöön. Kuitenkin, PL / SQL anonymous lohkot voivat olla hyödyllisiä testaustarkoituksiin.

seuraava kuva havainnollistaa PL / SQL-lohkon rakennetta:

 PL / SQL anonymous block

1) Declaration section

A PL / SQL block on declaration section, jossa ilmoitetaan muuttujia, allokoidaan muistia cursoreille ja määritellään tietotyypit.

2) suoritettava osio

PL/SQL-lohkossa on suoritettava osio. Suoritettava osio alkaa avainsanalla BEGIN ja päättyy avainsanaan END. Suoritettavassa osiossa on oltava vähintään yksi suoritettava lausunto, vaikka se olisi NULL lausunto, joka ei tee mitään.

3) poikkeusten käsittely-osiossa

PL/SQL-lohkossa on poikkeusten käsittely-osio, joka alkaa avainsanalla EXCEPTION. Poikkeusten käsittely-osio on, jossa pyydystetään ja käsitellään poikkeukset, joita koodi nostaa suoritus-osiossa.

huomaa, että lohko itsessään on suoritettava lausunto, joten voit pesiä lohkon muiden lohkojen sisällä.

PL/SQL anonymous block esimerkki

seuraavassa esimerkissä on yksinkertainen PL/SQL anonymous block, jossa on yksi suoritettava osio.

suoritettava osio kutsuu DMBS_OUTPUT.PUT_LINE – menettelyn näyttämään "Hello World" – viestin näytöllä.

Suorita PL/SQL anonymous-lohko käyttäen SQL*Plus

kun sinulla on anonyymin lohkon koodi, voit suorittaa sen käyttämällä SQL*Plus-koodia, joka on Oracle-tietokannan tarjoama komentoriviliitäntä SQL-lausekkeen ja PL/SQL-lohkojen suorittamiseen.

seuraava kuva havainnollistaa, miten PL/SQL-lohko suoritetaan SQL*Plus-ohjelmalla:

PL / SQL anonymous block-esimerkki

yhdistä ensin Oraclen tietokantapalvelimeen käyttäjätunnuksella ja salasanalla.

toinen, Käynnistä palvelimen ulostulo komennolla SET SERVEROUTPUT ON niin, että DBMS_OUTPUT.PUT_LINE – menettely näyttää tekstin ruudulla.

kolmanneksi, Kirjoita lohkon koodi ja syötä etuviivaviiva (/) ohjeistaaksesi SQL*Plus-toimintoa lohkon suorittamiseen. Kun kirjoitat eteenpäin-slash ( / ), SQL * Plus suorittaa Blokin ja näyttää Hello World – viestin ruudulla kuten kuvassa.

huomaa, että SET SERVEROUTPUT ON – komento on suoritettava jokaisessa Oraclen tietokantaan yhdistettävässä istunnossa, jotta viesti voidaan näyttää DBMS_OUTPUT.PUT_LINE – menetelmällä.

suorittaaksesi syötetyn lohkon uudelleen, käytät / komentoa sen sijaan, että kirjoittaisit kaiken tyhjästä:

plsql anonymous block-suorita lohko uudelleen

jos haluat muokata koodilohkoa, käytä komentoa edit. SQL * Plus kirjoittaa koodilohkon tiedostoon ja avaa sen tekstieditorissa seuraavan kuvan mukaisesti:

plsql anonymous block-edit

voit muuttaa tiedoston sisältöä seuraavasti:

Tallenna ja sulje tiedosto. Tiedoston sisältö kirjoitetaan puskuriin ja käännetään uudelleen.

tämän jälkeen voit suorittaa koodilohkon uudelleen, se käyttää uutta koodia:

plsql anonymous block-suorita

Suorita PL/SQL anonymous block käyttäen SQL Developer

ensin yhteys Oraclen tietokantapalvelimeen Oracle SQL Developer-ohjelmalla.

toiseksi luo anonymous-block.sql – niminen uusi SQL-tiedosto C:\plsql – hakemistoon, joka tallentaa PL/SQL-koodin.

PL / SQL anonymous block-sql developer
PL/SQL anonymous block - sql developer - create SQL file

Third, enter the PL / SQL code and execute it by clicking Execute button or press the Ctrl-Enter keyboard shortcut.

PL/SQL anonymous block - SQL developer - execute PL/SQL Block

More PL/SQL anonymous block examples

tässä esimerkissä julistamme ensin muuttujan l_message, jossa on tervehdyssanoma. Ja sitten toteutusosiossa käytetään DBMS_OUTPUT.PUTLINE – menettelyä, jossa näytetään muuttujan sisältö kirjaimellisen merkkijonon sijaan.

tässä on tuloste:

Hello World!

seuraava nimetön lohkoesimerkki lisää poikkeusten käsittelyosion, joka nappaa ZERO_DIVIDE suoritettavassa osiossa esiin nostetun poikkeuksen ja näyttää virhesanoman.

virheilmoitus on:

ORA-01476: divisor is equal to zero

nyt, sinun pitäisi tietää, miten luoda PL / SQL anonyymi lohkot ja suorittaa ne käyttämällä SQL*Plus ja Oracle SQL Developer tools.

  • oliko tästä opetuksesta apua?
  • YesNo



+