PL / SQL Anonymous Block

Összefoglalás: ebben a bemutatóban megismerheti a PL / SQL anonymous blokkot és azt, hogyan kell végrehajtani az SQL*Plus és az SQL fejlesztői eszközökkel.

PL/SQL névtelen blokk áttekintése

a PL/SQL egy blokkszerkezetű nyelv, amelynek kódja blokkokba van rendezve. A PL / SQL blokk három részből áll: deklarációs, végrehajtható és kivételkezelő szakaszokból. Egy blokkban a végrehajtható szakasz kötelező, míg a Deklarációs és kivételkezelő szakaszok nem kötelezőek.

egy PL / SQL blokknak van neve. Függvények vagy eljárások egy példa egy megnevezett blokkra. A megnevezett blokkot az Oracle Database server tárolja, és később újra felhasználható.

a név nélküli blokk névtelen blokk. A névtelen blokk nem kerül mentésre az Oracle adatbázis-kiszolgálón, így csak egyszeri használatra szolgál. A PL / SQL névtelen blokkok azonban hasznosak lehetnek tesztelési célokra.

az alábbi kép egy PL/SQL blokk szerkezetét szemlélteti:

 PL / SQL névtelen blokk

1) Deklarációs szakasz

a PL / SQL blokknak van egy deklarációs szakasza, ahol deklarálja a változókat, memóriát foglal el a kurzorok számára, és meghatározza az adattípusokat.

2) végrehajtható szakasz

a PL/SQL blokknak van végrehajtható szakasza. A végrehajtható szakasz a BEGIN kulcsszóval kezdődik, és a ENDkulcsszóval végződik. A végrehajtható szakasznak legalább egy végrehajtható utasítással kell rendelkeznie, még akkor is, ha a NULL utasítás nem tesz semmit.

3) kivételkezelő szakasz

a PL/SQL blokknak van egy kivételkezelő szakasza, amely a EXCEPTION kulcsszóval kezdődik. A kivételkezelés szakasz az, ahol a végrehajtás szakaszban a kód által felvetett kivételeket elkaphatja és kezelheti.

Megjegyzés: maga a blokk egy végrehajtható utasítás, ezért beágyazhat egy blokkot más blokkokba.

PL/SQL anonim blokk példa

a következő példa egy egyszerű PL/SQL anonim blokkot mutat be egy végrehajtható szekcióval.

a végrehajtható szakasz meghívja a DMBS_OUTPUT.PUT_LINE eljárást a "Hello World" üzenet megjelenítésére a képernyőn.

PL/SQL anonim blokk végrehajtása az SQL*Plus használatával

ha megvan egy anonim blokk kódja, végrehajthatja azt az SQL*Plus használatával, amely az Oracle Database által biztosított SQL utasítás és PL/SQL blokkok végrehajtására szolgáló parancssori felület.

a következő kép bemutatja, hogyan kell végrehajtani egy PL / SQL blokkot az SQL * Plus használatával:

PL/SQL anonim blokk példa

először csatlakozzon az Oracle Database szerverhez felhasználónév és jelszó használatával.

másodszor kapcsolja be a szerver kimenetét a SET SERVEROUTPUT ON paranccsal, hogy az DBMS_OUTPUT.PUT_LINE eljárás szöveget jelenítsen meg a képernyőn.

harmadszor, írja be a blokk kódját, és írjon be egy perjelet (/), hogy utasítsa az SQL*Plus-t a blokk végrehajtására. Miután beírta a forward-perjelet ( / ), az SQL*Plus végrehajtja a blokkot, és megjeleníti a Hello World üzenetet a képernyőn az ábrákon látható módon.

vegye figyelembe, hogy a SET SERVEROUTPUT ON parancsot minden olyan munkamenetben végre kell hajtania, amelyet az Oracle adatbázishoz csatlakoztat, hogy az üzenet megjelenjen a DBMS_OUTPUT.PUT_LINE eljárással.

az újra beírt blokk végrehajtásához használja / parancs ahelyett, hogy mindent beírna a semmiből:

plsql névtelen blokk-blokk végrehajtása újra

ha szerkeszteni szeretné a kódblokkot, használja a edit parancsot. Az SQL * Plus a kódblokkot egy fájlba írja, majd szövegszerkesztőben nyitja meg az alábbi képen látható módon:

 PLSQL anonymous block-edit

a fájl tartalmát a következőképpen módosíthatja:

mentse és zárja be a fájlt. A fájl tartalma a pufferbe kerül és újrafordításra kerül.

ezt követően újra végrehajthatja a kódblokkot, az új kódot fogja használni:

plsql anonymous block-execute

Execute a PL/SQL anonymous blokk segítségével SQL Developer

először csatlakozzon az Oracle Database server segítségével Oracle SQL Developer.

másodszor hozzon létre egy új SQL fájlt, amelynek neve anonymous-block.sql a C:\plsql könyvtárban található, amely tárolja a PL/SQL kódot.

 PL / SQL névtelen blokk-sql fejlesztő
PL / SQL anonymous block-sql developer-create SQL file

harmadszor, írja be a PL/SQL kódot, majd hajtsa végre a Végrehajtás gombra kattintva vagy a Ctrl-Enter billentyűparancs megnyomásával.

PL/SQL névtelen blokk - SQL fejlesztő - PL/SQL blokk végrehajtása

további PL/SQL névtelen blokk példák

ebben a példában először deklarálunk egy l_message változót, amely az üdvözlő üzenetet tartalmazza. Ezután a végrehajtás szakaszban a DBMS_OUTPUT.PUTLINE eljárást használjuk a változó tartalmának megjelenítésére a szó szerinti karakterlánc használata helyett.

itt van a kimenet:

Hello World!

a következő névtelen blokkpélda hozzáad egy kivételkezelő részt, amely a végrehajtható szakaszban felvetett ZERO_DIVIDE kivételt fogja meg, és hibaüzenetet jelenít meg.

a hiba mesage:

ORA-01476: divisor is equal to zero

most már tudnia kell, hogyan hozhat létre PL/SQL névtelen blokkokat, és végrehajthatja azokat SQL*Plus és Oracle SQL fejlesztői eszközökkel.

  • hasznos volt ez az oktatóanyag?
  • igennem



+