PL/SQL Anonym Blokk

Sammendrag: i denne opplæringen vil du lære om pl / SQL anonym blokk og hvordan du utfører den ved HJELP AV SQL * Plus Og SQL Utviklerverktøy.

pl/SQL anonym blokkoversikt

PL/SQL ER et blokkstrukturert språk hvis kode er organisert i blokker. EN pl / SQL blokk består av tre seksjoner: erklæring, kjørbar, og unntak-håndtering seksjoner. I en blokk er den kjørbare delen obligatorisk, mens deklarasjons-og unntaksbehandlingsdelene er valgfrie.

en pl / SQL-blokk har et navn. Funksjoner eller Prosedyrer er et eksempel på en navngitt blokk. En navngitt blokk lagres i Oracle-Databaseserveren og kan gjenbrukes senere.

en blokk uten navn er en anonym blokk. En anonym blokk lagres ikke I Oracle Database server, så det er bare for engangsbruk. PL / SQL anonyme blokker kan imidlertid være nyttige for testformål.

følgende bilde illustrerer strukturen TIL EN PL / SQL-blokk:

 PL/SQL anonym blokk

1) Deklarasjonsseksjon

EN pl / SQL-blokk har en deklarasjonsseksjon der du deklarerer variabler, tildeler minne for markører og definerer datatyper.

2) Kjørbar seksjon

EN PL / SQL-blokk har en kjørbar seksjon. En kjørbar seksjon starter med søkeordet BEGIN og slutter med søkeordet END. Den kjørbare delen må ha minst en kjørbar setning, selv om det er NULL – setningen som ikke gjør noe.

3) Seksjon For Unntakshåndtering

EN pl / SQL-blokk har en seksjon for unntakshåndtering som starter med nøkkelordet EXCEPTION. Delen unntakshåndtering er der du fanger og håndterer unntak som er hevet av koden i utførelsesdelen.

merk en blokk i seg selv er en kjørbar setning, derfor kan du neste en blokk i andre blokker.

PL/SQL anonym blokk eksempel

følgende eksempel viser en enkel pl/SQL anonym blokk med en kjørbar seksjon.

den kjørbare delen kaller DMBS_OUTPUT.PUT_LINE – prosedyren for å vise "Hello World" – meldingen på skjermen.

Utfør EN pl / SQL anonym blokk ved HJELP AV SQL * Plus

Når du har koden til en anonym blokk, kan du utføre DEN ved HJELP AV SQL * Plus, som er et kommandolinjegrensesnitt for å utføre SQL-setning og PL/SQL-blokker levert Av Oracle Database.

følgende bilde illustrerer hvordan du utfører EN pl / SQL-blokk ved HJELP AV SQL * Plus:

 PL/SQL anonym blokk eksempel

koble først Til Oracle-Databaseserveren ved hjelp av et brukernavn og passord.

For Det Andre slår du på serverutgangen ved hjelp av kommandoen SET SERVEROUTPUT ON slik at prosedyren DBMS_OUTPUT.PUT_LINE viser tekst på skjermen.

For Det Tredje skriver du koden til blokken og skriver inn en skråstrek (/) for Å instruere SQL * Plus til å utføre blokken. NÅR DU skriver forward-slash (/), VIL SQL*Plus utføre blokken og vise meldingen Hello World på skjermen som vist i illustrasjonene.

Merk at du må utføre kommandoen SET SERVEROUTPUT ON i hver økt du kobler Til Oracle-Databasen for å vise meldingen ved hjelp av prosedyren DBMS_OUTPUT.PUT_LINE.

for å utføre blokken du har skrevet inn igjen, bruker du kommandoen / i stedet for å skrive alt fra bunnen av:

plsql anonym blokk-utfør en blokk igjen

hvis du vil redigere kodeblokken, bruk kommandoen edit. SQL * Plus vil skrive kodeblokken til en fil og åpne den i en tekstredigerer som vist på bildet nedenfor:

 plsql anonym blokk-rediger

du kan endre innholdet i filen som følgende:

lagre og lukk filen. Innholdet i filen vil bli skrevet til bufferen og rekompilert.

etter det kan du utføre kodeblokken igjen, den vil bruke den nye koden:

plsql anonymous block-utfør

Utfør EN pl / SQL anonym blokk ved HJELP AV SQL Developer

først kobler du Til Oracle-Databaseserveren ved Hjelp Av Oracle SQL Developer.

For Det andre oppretter du en NY SQL-fil som heter anonymous-block.sql bodde i katalogen C:\plsql som lagrer pl / SQL-koden.

 PL/SQL anonym blokk-sql utvikler
PL / SQL anonym block-sql developer-lag SQL-fil

Tredje, skriv INN pl / SQL-koden og utfør den ved å klikke På Utfør-knappen eller trykke På Ctrl-Enter-hurtigtasten.

pl/SQL anonym block - SQL developer - execute PL/SQL Block

Flere pl/SQL anonym block eksempler

i dette eksemplet erklærer vi først en variabel l_message som inneholder hilsen meldingen. Og så, i utførelsesdelen, bruker vi prosedyren DBMS_OUTPUT.PUTLINE for å vise innholdet i denne variabelen i stedet for å bruke en bokstavelig streng.

her er utgangen:

Hello World!

det neste anonyme blokkeksemplet legger til en unntakshåndteringsdel som fanger ZERO_DIVIDE unntak hevet i den kjørbare delen og viser en feilmelding.

feilen mesage er:

ORA-01476: divisor is equal to zero

Nå bør du vite hvordan du lager pl / SQL anonyme blokker og utfører dem ved HJELP AV SQL*Plus Og Oracle SQL Developer tools.

  • Var denne opplæringen nyttig?
  • YesNo



+