Shrnutí: v tomto tutoriálu, se dozvíte o PL/SQL anonymní blok a jak to provést pomocí SQL*Plus a SQL Developer tools.
PL / SQL anonymní přehled bloků
PL / SQL je blokově strukturovaný jazyk, jehož kód je uspořádán do bloků. Blok PL / SQL se skládá ze tří částí: sekce deklarace, spustitelný soubor a sekce pro zpracování výjimek. V bloku je spustitelná část povinná, zatímco sekce deklarace a zpracování výjimek jsou volitelné.
blok PL / SQL má název. Funkce nebo procedury jsou příkladem pojmenovaného bloku. Pojmenovaný blok je uložen do databázového serveru Oracle a může být znovu použit později.
blok Bez názvu je anonymní blok. Anonymní blok není uložen v databázovém serveru Oracle, takže je pouze pro jednorázové použití. Anonymní bloky PL / SQL však mohou být užitečné pro účely testování.
následující obrázek znázorňuje strukturu bloku PL / SQL:
1) Prohlášení sekce
PL/SQL blok má prohlášení sekce, kde můžete deklarovat proměnné, přidělit paměť pro kurzory, a definovat datové typy.
2) spustitelná sekce
blok PL / SQL má spustitelnou sekci. Spustitelná část začíná klíčovým slovem BEGIN
a končí klíčovým slovem END
. Spustitelná část musí mít alespoň jeden spustitelný příkaz, i když je to příkaz NULL
, který nedělá nic.
3) sekce zpracování výjimek
blok PL / SQL má sekci zpracování výjimek, která začíná klíčovým slovem EXCEPTION
. Sekce zpracování výjimek je místo, kde chytíte a zpracováváte výjimky uvedené kódem v části provádění.
Poznámka blok sám o sobě je spustitelný příkaz, proto můžete blok umístit do jiných bloků.
příklad anonymního bloku PL / SQL
následující příklad ukazuje jednoduchý anonymní blok PL / SQL s jednou spustitelnou sekcí.
spustitelná část volá proceduru DMBS_OUTPUT.PUT_LINE
, aby se na obrazovce zobrazila zpráva "Hello World"
.
spuštění PL/SQL anonymní blok pomocí SQL*Plus
Jakmile budete mít kód, anonymní blok, můžete ji provést pomocí SQL*Plus, což je rozhraní příkazového řádku pro provedení SQL a PL/SQL bloky poskytována Databáze Oracle.
následující obrázek ukazuje, jak provést blok PL / SQL pomocí SQL * Plus:
nejprve se připojte k databázovému serveru Oracle pomocí uživatelského jména a hesla.
za druhé zapněte výstup serveru pomocí příkazu SET SERVEROUTPUT ON
tak, aby procedura DBMS_OUTPUT.PUT_LINE
zobrazovala text na obrazovce.
Zatřetí zadejte kód bloku a zadejte lomítko (/
), abyste instruovali SQL * Plus k provedení bloku. Jakmile zadáte lomítko (/), SQL*Plus provede blok a zobrazí zprávu Hello World
na obrazovce, jak je znázorněno na obrázcích.
Všimněte si, že musíte provést příkaz SET SERVEROUTPUT ON
v každé relaci, kterou připojíte k databázi Oracle, aby se Zpráva zobrazila pomocí procedury DBMS_OUTPUT.PUT_LINE
.
spustit blok, který jste zadali znovu, můžete použít /
příkaz namísto psaní všechno od nuly:
Pokud chcete upravit blok kódu, použijte edit
příkaz. SQL * Plus zapíše blok kódu do souboru a otevře jej v textovém editoru, Jak je znázorněno na následujícím obrázku:
obsah souboru můžete změnit takto:
a uložte a zavřete soubor. Obsah souboru bude zapsán do vyrovnávací paměti a překompilován.
za to, že můžete vykonat blok kódu znovu, to bude používat nový kód:
spuštění PL/SQL anonymní blok pomocí SQL Developer
Nejprve připojit k serveru s Databází Oracle pomocí Oracle SQL Developer.
za druhé vytvořte nový soubor SQL s názvem anonymous-block.sql
s bydlištěm v adresáři C:\plsql
, který uloží kód PL / SQL.
za Třetí, zadat kód PL/SQL a spusťte jej kliknutím na tlačítko Spustit nebo stisknutím Ctrl-Enter klávesovou zkratku.
Více PL/SQL anonymní blok příklady
V tomto příkladu, musíme nejprve deklarovat proměnnou l_message
které drží uvítací zprávu. A pak v části provedení použijeme proceduru DBMS_OUTPUT.PUTLINE
k zobrazení obsahu této proměnné místo použití doslovného řetězce.
zde je výstup:
Hello World!
další příklad anonymního bloku přidá sekci zpracování výjimek, která zachytí ZERO_DIVIDE
výjimku vznesenou ve spustitelné části a zobrazí chybovou zprávu.
chyba mesage je:
ORA-01476: divisor is equal to zero
Nyní byste měli vědět, jak vytvořit anonymní bloky PL/SQL a spustit je pomocí nástrojů SQL * Plus a Oracle SQL Developer tools.
- byl tento návod užitečný?
- YesNo