Výukový program pro PL / SQL: Vše, co potřebujete vědět o PL / SQL

Výukový program PL / SQL pokrývá veškeré podrobné vysvětlení všech nezbytných konceptů potřebných k osvojení programování PL / SQL na různých příkladech

PL / SQL je procedurální jazyk, který překonává nedostatky, kterým čelí strukturovaný dotazovací jazyk . Jedná se o rozšíření SQL a můžeme dokonce používat dotazy SQL bez jakýchkoli potíží v jakékoli aplikaci nebo programu PL / SQL. V tomto výukovém programu PL / SQL podrobně projdeme základní pojmy PL / SQL. V tomto článku se věnujeme následujícím tématům.

Co je PL / SQL?

Znamená to rozšíření procedurálního jazyka na strukturovaný dotazovací jazyk . Společnost Oracle vytvořila PL / SQL, která rozšiřuje některá omezení SQL a poskytuje komplexnější řešení pro vytváření kriticky důležitých aplikací běžících na Oracle .





Výukový program pro logo-pl / sql - edureka

Funkce

  • PL / SQL poskytuje funkčnost procedurálního jazyka, jako je rozhodování, iterace atd.

  • Pomocí jediného příkazu může PL / SQL provést řadu dotazů.



  • Můžeme také znovu použít jednotky PL / SQL, jako jsou funkce, triggery, procedury atd., Které jsou po vytvoření uloženy v databázi.

  • PL / SQL má také blok zpracování výjimek, který zpracovává výjimky v PL / SQL.

  • Pomocí PL / SQL je také možná rozsáhlá kontrola chyb



  • Aplikace napsané v PL / SQL jsou přenosné na jiný hardware a operační systémy za předpokladu, že Oracle musí být funkční.

PL / SQL vs SQL

SQL PL / SQL
SQL je jediný dotaz, který se používá k provádění operací DDL a DMLPL / SQL je blok kódů, který se používá k definování celého programu nebo procedury / funkce atd
Ve skutečnosti nedefinuje, jak je třeba věci dělat, spíše definuje, co je třeba udělatPL / SQL definuje, jak je třeba věci dělat
Provede jediný příkazProvede blok příkazů najednou.
SQL se používá hlavně k manipulaci s datyPL / SQL se na druhé straně používá k vytváření aplikací
Nemůže obsahovat kód PL / SQLJelikož se jedná o příponu SQL, může v ní obsahovat kód SQL

Blokovat struktury v PL / SQL

PL / SQL obvykle organizuje kód do bloků. Blok kódu bez názvu se nazývá anonymní blok. Je znám jako anonymní blok, protože není uložen v databázi Oracle. Podívejme se na anonymní blok v PL / SQL.

[PROHLÁŠENÍ] prohlášení prohlášení [ZAČÍT] příkazy provedení [VÝJIMKA] prohlášení výjimky KONEC /

Při pohledu na diagram zobrazený výše vidíme, že bloková struktura je rozdělena do čtyř částí, tj. Deklarace, začátek, výjimka a konec. Pokusme se pochopit, jak funguje bloková struktura v PL / SQL. Ze všech těchto sekcí je sekce provádění povinná a všechny ostatní jsou volitelné.

  • PROHLÁSIT klíčové slovo se používá v sekci deklarace se používá k deklaraci datových typů a struktur, jako jsou proměnné, funkce atd.

  • ZAČÍT klíčové slovo se používá pro sekci provádění. Je povinný a obsahuje všechny příkazy, které je třeba provést. V tomto bloku je definována obchodní logika, v tomto bloku můžeme použít procedurální příkazy nebo příkazy SQL.

  • The VÝJIMKA klíčové slovo se používá pro sekci výjimek. Obsahuje všechny příkazy výjimky.

  • KONEC klíčové slovo označuje konec bloku a zpětné lomítko „/“ řekne nástroji, který používáte (Oracle Database Tool) k provedení bloku PL / SQL.

Zde je jednoduchý příklad, který ukazuje, jak můžeme použít kód PL / SQL.

ZAČNĚTE KONEC NULL /

Nyní, když víme, jak bloková struktura funguje v PL / SQL, pochopme různé aspekty PL / SQL, jako je deklarace, pojmenování a přiřazení hodnot proměnným.

Proměnné PL / SQL

Proměnná v PL / SQL je v podstatě název, který se mění, nebo dočasné umístění úložiště, které podporuje konkrétní datový typ. Pojďme se podívat na to, jak můžeme použít proměnné v programu PL / SQL.

Pravidla pro pojmenování proměnných

PL / SQL dodržuje následující pravidla pro pojmenování proměnných.

  • Proměnná nesmí mít více než 31 znaků

  • Název proměnné by měl začínat znakem ASCII. Protože PL / SQL rozlišuje velká a malá písmena, velká a malá písmena budou různé proměnné.

    nastavení hadoop na ubuntu
  • Za prvním znakem musí být speciální znak ($, _) nebo libovolné číslo.

Konvence pojmenování

K použití proměnných použijte následující konvence pojmenování uvedené níže.

Předpona Datový typ
proti_VARCHAR2
n_ČÍSLO
t_STŮL
r_ŘÁDEK
d_DATUM
b_BOOLEAN

Prohlášení

Zkusme pochopit, jak se deklarace proměnných provádí v PL / SQL

Deklarace obsahuje název proměnné, za nímž následuje datový typ a oddělené středníkem. Následuje příklad, který ukazuje, jak můžete deklarovat proměnnou v PL / SQL.

DECLARE v_name VARCHAR (25) n_age ČÍSLO (3) ZAČNĚTE KONEC NULL

Můžete také přidat délku datového typu, jak jsme provedli ve výše uvedeném příkladu.

Kotvy

Kotva v zásadě odkazuje na použití klíčového slova% TYPE, které deklaruje proměnnou s datovým typem spojeným s datovým typem sloupce konkrétního sloupce v tabulce.

Podívejte se na příklad, abyste tomu porozuměli. Předpokládejme, že máme tabulku ZAMĚSTNANCI, můžeme použít kotvy následujícím způsobem.

DECLARE v_name EMPLOYEE.NAME% TYPE n_age EMPLOYEE.AGE% TYPE ZAČNĚTE NULL END /

Úkol

Přiřazení proměnné je docela snadné, k přiřazení hodnot proměnné můžeme použít operátor přiřazení. Následující příklad ukazuje, jak můžeme proměnné přiřadit hodnoty.

DECLARE v_name VARCHAR (20) n_course VARCHAR (10) BEGIN v_name = 'edureka' v_course = 'sql' END /

Inicializace

Můžeme také inicializovat hodnotu proměnné v sekci deklarace. Následující příklad ukazuje, jak můžeme inicializovat hodnoty do proměnné.

DECLARE v_name VARCHAR (20) = 'edureka' n_course VARCHAR (10) = 'sql' ZAČNĚTE NULL END /

Nyní, když víme, jak můžeme pracovat s proměnnými, zkusme pochopit, jak budeme používat funkce v PL / SQL.

Funkce v PL / SQL

Funkce v PL / SQL je v podstatě pojmenovaný blok, který vrací hodnotu. Je také známý jako podprogram nebo podprogram, následující syntaxe ukazuje, jak můžeme používat funkce v PL / SQL.

VYTVOŘIT [NEBO VYMĚNIT] FUNKCE název_funkce [(parametr_1 [IN] [OUT] datový_typ, parametr_2 [IN] [OUT] datový_typ, parametr_N [IN] [OUT] datový_typ] RETURN return_data_type JE ZAČÁTEK příkazy return return_data_type KONEC VÝJIMKY /

Nejprve musíte za klíčovým slovem zadat název funkce. Název funkce musí začínat slovesem. Funkce nemusí mít žádný, jeden nebo více parametrů, které zadáme v parametrech. Musíme explicitně specifikovat datový typ každého parametru a poté přichází režim, který může mít jeden z následujících.

  • V - Parametr IN je parametr jen pro čtení.

  • VEN - Jedná se o parametr pouze pro zápis

  • DOVNITŘ VEN - Parametr IN OUT je parametr čtení i zápis.

Zde je jednoduchý příklad, který ukazuje, jak používáme funkce v PL / SQL.

VYTVOŘTE NEBO VYMĚŇTE FUNKCI try_parse (iv_number IN VARCHAR2) NÁVRATNÉ ČÍSLO ZAČÍNÁ NÁVRAT na_number (iv_number) VÝJIMKU, KDYŽ JINÉ POTOM NAVRACUJÍ KONEC

Volání funkce

Zkusme zavolat funkci, kterou jsme provedli v anonymním bloku v následujícím příkladu.

NASTAVTE SERVEROVÝ VÝSTUP NA VELIKOST 10 00000 PROHLÁŠENÍ n_x číslo n_y číslo n_z číslo BEGIN n_x: = try_parse ('256') n_y: = try_parse ('29 .72 ') n_z: = try_parse (' pqrs ') DBMS_OUTPUT.PUT_LINE (n_x) DB n_y) DBMS_OUTPUT.PUT_LINE (n_z) END /

Funkci můžeme zavolat také v příkazu SELECT. Nyní, když víme, jak můžeme používat funkce v PL / SQL, zkusme pochopit, jak pracujeme s procedurami v PL / SQL.

Procedura PL / SQL

Procedura je v podstatě blok, který provádí konkrétní úkol. Pomocí postupu můžeme zabalit nebo zapouzdřit složitou obchodní logiku a znovu je použít v aplikační i databázové vrstvě.

Podívejme se na jednoduchý příklad, abychom pochopili, jak postup funguje v PL / SQL

VYTVOŘIT NEBO VYMĚNIT POSTUP adjust_salary (in_employee_id IN EMPLOYEES.EMPLOYEE_ID% TYPE, in_percent IN NUMBER) ZAČÍNÁ - aktualizovat plat zaměstnance UPDATE zaměstnanci NASTAVIT plat = plat + plat * in_percent / 100 KDE zaměstnanec_id = in_employee_id KONEC

Ve výše uvedeném příkladu máme dva parametry, postup upraví plat o dané procento a klíčové slovo UPDATE aktualizuje hodnotu v informacích o platu.

Záhlaví procedury

Část před klíčovým slovem IS se nazývá záhlaví procedury. Následuje několik ukazatelů, se kterými se musíte seznámit při práci s postupy.

  • schéma - Jedná se o volitelný název schématu, do kterého procedura patří.

  • název - Název postupu, který by měl začínat slovesem.

  • parametry - Jedná se o volitelný seznam parametrů.

  • AUTHID - Určuje, zda se procedura provede s oprávněním aktuálního uživatele nebo původního vlastníka procedury.

Tělo postupu

Vše, co následuje za klíčovým slovem IS, se nazývá tělo procedury. V těle procedury máme deklarační, výjimkové a exekuční příkazy. Na rozdíl od funkce se klíčové slovo RETURN v proceduře používá k zastavení provádění a vrácení ovládacího prvku volajícímu.

Volání postupu

Podívejme se, jak můžeme volat proceduru v PL / SQL.

EXEC název_ procedury (param1, param2 & hellipparamN)

Můžeme volat procedury bez parametrů pouze pomocí klíčového slova EXEC a názvu procedury. Nyní, když víme, jak můžeme pracovat s procedurami, pokusme se pochopit, jak se vnořené bloky používají v PL / SQL.

Vnořený blok

Vnořený blok není nic jiného než kombinace jednoho nebo více bloků PL / SQL pro lepší kontrolu nad prováděním a výjimečným zpracováním programu.

Zde je jednoduchý příklad vnořeného bloku.

SET SERVEROUTPUT na velikosti 1000000 DECLARE n_emp_id EMPLOYEES.EMPLOYEE_ID% TYPE: = emp_id1 BEGIN DECLARE n_emp_id employees.employee_id% TYPE: = emp_id2 v_name employees.first_name% TYPE Začátek Vyberte FIRST_NAME INTO v_name od zaměstnanců WHERE employee_id = n_emp_id DBMS_OUTPUT.PUT_LINE ( ​​'Jméno zaměstnance '|| n_emp_id ||' je '|| v_name) VÝJIMKA KDY no_data_found PAK DBMS_OUTPUT.PUT_LINE (' Zaměstnanec '|| n_emp_id ||' nebyl nalezen ') END END /

Vnější blok PL / SQL ve výše uvedeném příkladu je známý jako nadřazený blok nebo uzavírající blok, vnitřní blok je naopak známý jako podřízený blok nebo uzavřený blok.

Není to dobrý nápad používat proměnné se stejnými názvy v obou blocích, protože během provádění bude proměnná podřízeného bloku přepsat proměnnou nadřazeného bloku. Stává se to proto, že PL / SQL dává první prioritu proměnné uvnitř jejího vlastního bloku.

Označit blok

Tento problém můžeme překonat pomocí štítku bloku, který nám pomáhá vytvářet odkazy na proměnné uvnitř bloků pomocí štítku.

Zde je jednoduchý příklad, který ukazuje, jak můžeme použít popisek bloku.

 <>PROHLÁŠIT ... ZAČÍT ... KONEC

Použití popisku bloku pomáhá zlepšit čitelnost kódu, získat lepší kontrolu a vytvářet odkazy na bloky. Nyní, když víme, jak můžeme pracovat s vnořenými bloky, zkusme pochopit, jak funguje IF STATEMENT v PL / SQL.

třídění pole c ++

Prohlášení IF

PL / SQL má tři IF PROHLÁŠENÍ

  • KDYŽ POTOM - Je to nejjednodušší IF STATEMENT, pokud je podmínka pravdivá, příkazy se provedou, pokud je podmínka nepravdivá, nedělá nic.

  • JESTLIŽE PAK JINAK - V tomto případě je klauzule ELSE přidána pro alternativní posloupnost příkazů.

  • IF-THEN-ELSEIF - Umožňuje nám provádět několik testovacích podmínek v sekvenci.

IF-THEN Syntaxe

IF podmínka PAK posloupnost_výkazů UKONČIT IF

Syntaxe IF-THEN-ELSE

IF podmínka PAK posloupnost_if_statements JINÁ posloupnost_se_staty END IF

Syntaxe IF-THEN-ELSEIF

IF podmínka1 PAK posloupnost_výkazů1 podmínka ELSIF2 PAK posloupnost_výkazů2 ELSE posloupnost_výkazů 3 KONEC IF

Nyní, když jsme skončili s IF STATEMENT, podívejme se na příkaz CASE v PL / SQL.

Prohlášení CASE

Příkaz CASE v zásadě pomáhá při provádění posloupnosti příkazů založených na selektoru. Selektorem v tomto případě může být cokoli, může to být proměnná, funkce nebo jednoduchý výraz. Zde je jednoduchý příklad, jak ukázat syntaxi příkazu CASE v PL / SQL.

[<>] PŘÍPAD [PRAVDA | selector] KDY výraz1 PAK posloupnost_výkazů1 KDY výraz2 PAK posloupnost_výkazů2 ... KDY výrazN PAK posloupnost_výkazů [JINÁ posloupnost_výkazů N + 1] KONEC PŘÍPADU [název_značky]

Ve výše uvedené syntaxi přichází po klíčovém slově CASE selektor. PL / SQL vyhodnotí selektor pouze jednou, aby určil, který příkaz je třeba provést.

Za selektorem následuje klíčové slovo KDY. Pokud výraz splňuje selektor, provede se odpovídající příkaz po THEN klíčové slovo.

Nyní, když víme, jak můžeme použít příkaz CASE, zkusme pochopit, jak budeme používat příkazy smyčky v PL / SQL.

Prohlášení o smyčce

Smyčkový příkaz v PL / SQL je iterativní příkaz, který umožňuje provádět posloupnost příkazů vícekrát. Zde je jednoduchý příklad, jak ukázat syntaxi příkazu smyčky v PL / SQL.

LOOP sequence_of_statements END LOOP

Mezi klíčovým slovem LOOP a END LOOP musí být alespoň jeden spustitelný příkaz.

Smyčka s příkazem EXIT

Příkazy EXIT a EXIT when umožňují ukončit smyčku. Příkaz EXIT WHEN ukončí smyčku podmíněně, zatímco EXIT ukončí provádění bezpodmínečně.

Smyčka ... KONEC, KDYŽ KONEC KONCE Smyčky

Štítek smyčky

Popisek smyčky se používá ke kvalifikaci názvu proměnné čítače smyčky při použití ve vnořené smyčce. Následuje syntaxe popisku smyčky.

 <>LOOP sequence_of_statements END LOOP štítek

Nyní, když víme, jak můžeme použít příkazy smyčky, pojďme se podívat na příkazy while, abychom lépe porozuměli.

While Loop Statement

Můžeme použít příkaz WHILE smyčky, když počet spuštění není definován, dokud nezačne spuštění. Následující syntaxe se používá pro příkaz WHILE loop v PL / SQL.

WHILE podmínka LOOP sequence_of_statements END LOOP

Podmínkou v syntaxi je logická hodnota nebo výraz, který je vyhodnocen jako TRUE, FALSE nebo NULL. Pokud má podmínka hodnotu TRUE, příkazy se provedou, pokud je FALSE, provádění se zastaví a ovládací prvek přejde na další spustitelný příkaz.

Nyní, když víme, jak můžeme použít příkaz smyčky WHILE, podívejme se na příkaz smyčky FOR.

Pro výpis smyčky

Příkaz smyčky FOR v PL / SQL nám umožňuje provádět posloupnost příkazů po definitivní počet opakování. Následuje syntaxe pro použití příkazu FOR loop v PL / SQL

FOR loop_counter IN [REVERSE] lower_bound .. higher_bound LOOP sequence_of_statements END LOOP

PL / SQL vytváří lokální proměnnou loop_counter automaticky s datovým typem INTEGER pro smyčku, takže ji nemusíte explicitně deklarovat. Lowerbound..higherbound je rozsah, ve kterém smyčka iteruje. Musíte také mít alespoň jeden spustitelný příkaz mezi klíčovými slovy LOOP a END LOOP.

Nyní, když víme, jak můžeme použít příkazy smyčky v PL / SQL, pojďme se podívat na výjimečné zacházení v PL / SQL.

Výjimečné zacházení

V PL / SQL je jakýkoli druh chyby považován za výjimku. Výjimku lze považovat za speciální podmínku, která může změnit nebo změnit tok provádění. V PL / SQL existují dva typy výjimek.

  • Výjimka systému - Vyvolá se za běhu PL / SQL, když zjistí chybu.

  • Výjimka definovaná programátorem - Tyto výjimky definuje programátor v konkrétní aplikaci.

Definování výjimky

Výjimku v PL / SQL je třeba deklarovat, než ji lze vyvolat. Výjimku můžeme definovat pomocí klíčového slova EXCEPTION, jako jsme to udělali v níže uvedeném příkladu.

VÝJIMKA EXCEPTION_NAME

K vyvolání výjimky používáme klíčové slovo RAISE.

ZVÝŠIT VÝJIMKU_NAME

Takže to bylo všechno o PL / SQL, doufám, že vám tento článek pomohl při zvyšování hodnoty vašich znalostí. Další informace o SQL nebo databázích najdete v našem komplexním seznamu pro čtení zde: .

Pokud si přejete získat strukturované školení o MySQL, podívejte se na naše který přichází s živým tréninkem vedeným instruktorem a zkušenostmi z reálného projektu. Toto školení vám pomůže porozumět MySQL do hloubky a pomůže vám dosáhnout zvládnutí předmětu.

co je java ide

Máte na nás dotaz? Uveďte to prosím v sekci komentářů na stránce ” Výukový program pro PL / SQL „A ozvu se vám.