Resume: i denne vejledning lærer du om anonym blokblok og hvordan du udfører den ved hjælp af udviklerværktøjer.
anonym blokoversigt
PL/kvm er et blokstruktureret sprog, hvis kode er organiseret i blokke. En pl / CCL-blok består af tre sektioner: deklaration, eksekverbar og undtagelseshåndteringsafsnit. I en blok er den eksekverbare sektion obligatorisk, mens deklarations-og undtagelseshåndteringsafsnittene er valgfri.
en blok har et navn. Funktioner eller procedurer er et eksempel på en navngivet blok. En navngivet blok gemmes på Oracle-databaseserveren og kan genbruges senere.
en blok uden navn er en anonym blok. En anonym blok gemmes ikke i Oracle-databaseserveren, så den er kun til engangsbrug. Anonyme blokke kan dog være nyttige til testformål.
følgende billede illustrerer strukturen af en pl / kvm blok:
1) Deklarationsafsnit
en blok har en deklarationsafsnit, hvor du erklærer variabler, tildeler hukommelse til markører og definerer datatyper.
2) eksekverbar sektion
en pl/kvm blok har en eksekverbar sektion. En eksekverbar sektion starter med nøgleordet BEGIN
og slutter med nøgleordet END
. Den eksekverbare sektion skal have en mindst en eksekverbar sætning, selvom det er NULL
– sætningen, der ikke gør noget.
3) Undtagelse-Håndtering sektion
en pl/kvm blok har en Undtagelse-Håndtering sektion, der starter med søgeordet EXCEPTION
. Afsnittet undtagelseshåndtering er, hvor du fanger og håndterer undtagelser, der er rejst af koden i afsnittet udførelse.
bemærk en blok i sig selv er en eksekverbar erklæring, derfor kan du Rede en blok inden for andre blokke.
eksempel på anonym blok
følgende eksempel viser en simpel anonym blok med en eksekverbar sektion.
den eksekverbare sektion kalder DMBS_OUTPUT.PUT_LINE
– proceduren for at vise "Hello World"
– meddelelsen på skærmen.
udfør en anonym blok ved hjælp af*Plus
når du har koden til en anonym blok, kan du udføre den ved hjælp af*Plus, som er en kommandolinjegrænseflade til udførelse af udsagn og blokke fra Oracle Database.
følgende billede illustrerer, hvordan du udfører en pl/kvm blok ved hjælp af:
Forbind først til Oracle-databaseserveren ved hjælp af et brugernavn og en adgangskode.
for det andet skal du tænde serverudgangen ved hjælp af kommandoen SET SERVEROUTPUT ON
, så proceduren DBMS_OUTPUT.PUT_LINE
viser tekst på skærmen.
for det tredje skal du skrive koden for blokken og indtaste en skråstreg fremad ( /
) for at instruere os i at udføre blokken. Når du har indtastet skråstreg (/), udfører vi blokken og viser Hello World
-meddelelsen på skærmen som vist på illustrationerne.
Bemærk, at du skal udføre kommandoen SET SERVEROUTPUT ON
i hver session, du opretter forbindelse til Oracle-databasen for at vise meddelelsen ved hjælp af proceduren DBMS_OUTPUT.PUT_LINE
.
for at udføre den blok, du har indtastet igen, bruger du /
kommando i stedet for at skrive alt fra bunden:
hvis du vil redigere kodeblokken, skal du bruge kommandoen edit
. Vil skrive kodeblokken til en fil og åbne den i en teksteditor som vist på følgende billede:
du kan ændre indholdet af filen som følgende:
Gem og luk filen. Indholdet af filen vil blive skrevet til bufferen og kompileret igen.
derefter kan du udføre kodeblokken igen, den bruger den nye kode:
udfør en anonym blok ved hjælp af Anonym Udvikler
Opret først forbindelse til Oracle-databaseserveren ved hjælp af Oracle Udvikler.
for det andet skal du oprette en ny fil med navnet anonymous-block.sql
bosat i mappen C:\plsql
, der gemmer pl/kvm-koden.
flere eksempler på anonyme blokke
i dette eksempel erklærer vi først en variabel l_message
, der indeholder hilsenmeddelelsen. Og så bruger vi i udførelsesafsnittet DBMS_OUTPUT.PUTLINE
– proceduren til at vise indholdet af denne variabel i stedet for at bruge en bogstavelig streng.
her er output:
Hello World!
det næste anonyme blokeksempel tilføjer en undtagelseshåndteringsafsnit, der fanger ZERO_DIVIDE
undtagelse, der er rejst i det eksekverbare afsnit og viser en fejlmeddelelse.
fejlen mesage er:
ORA-01476: divisor is equal to zero
nu skal du vide, hvordan du opretter anonyme blokke og udfører dem ved hjælp af udviklerværktøjer.
- var denne tutorial nyttig?
- Ja