Co je postup v SQL

Vývojáři mohou využít sílu SQL pomocí procedurálních příkazů zabudovaných uvnitř Pl / SQL, protože Pl / SQL je blokově strukturovaný jazyk. Uložená procedura není nic jiného než kolekce deklarativních příkazů SQL. Postup můžeme považovat za funkci nebo metodu. K vyvolání procedury lze použít spouštěče, jiné procedury nebo aplikace na Java, PHP atd. Blokové příkazy jsou předávány do stroje Oracle najednou, takže můžeme mít vysokou rychlost zpracování a snížit provoz.

Uložená procedura je jako blok kódu, který můžeme znovu a znovu uložit a znovu použít. Pokud máme dotaz SQL, který používáme vícekrát, tak ho místo přepisování můžeme znovu uložit jako uloženou proceduru a pak ji musíme zavolat a nechat ji provést. Můžeme také předat parametry uložené proceduře, takže můžeme mít výstup na základě hodnoty parametru nebo předaných hodnot.

Co je SQL?

Strukturovaný dotazovací jazyk (SQL) je někdy vyslovován jako individuální znak „S-QL“ nebo „viz-Quel“. Používá se k dotazování, manipulaci nebo aktualizaci dat v relační databázi. Používá se k vložení nebo aktualizaci nebo odstranění záznamů v databázi. Jednou z hlavních funkcí SQL je údržba databáze.

Syntaxe dotazu SQL pro načtení všech záznamů je následující:

vyberte * z tabulky název_tabulky

Uložené procedury v SQL

Co je to uložená procedura? Uložená procedura je kolekce příkazů jazyka strukturovaného dotazu (SQL) s názvem, který je k němu přiřazen. Tyto uložené procedury jsou uloženy v systému správy relačních databází (RDBMS). Je tedy možné, aby vícenásobné vyvolání procedur snížilo vícenásobné provádění a vedlo ke zkrácení doby provádění. Data lze upravovat pomocí postupů a hlavní výhodou je to, že není vázáno na konkrétní aplikaci.

Uložené procedury mohou přijímat parametry jako vstup a mohou vracet více hodnot jako výstupní parametr. V SQL Server uložené procedury provádějí operace v databázi a mohou vracet stavovou hodnotu do aplikace nebo procedury dávkového volání. Uživatelem definované procedury se vytvářejí pomocí uživatelem definované databáze, s výjimkou případů, kdy máme databázi jen pro čtení. Z tohoto důvodu je třeba ji vyvinout v Transact SQL (T-SQL). Tempdb je místo, kde jsou uloženy všechny dočasné postupy. Máme dva typy uložených procedur

  1. Místní postupy
  2. Globální postupy

Místní postupy jsou postupy, které jsou viditelné pouze pro uživatele, který je používá v připojení, zatímco globální postupy jsou viditelné pro všechny uživatele ve stejném připojení.

Struktura vytvoření procedury

Vlastník zde znamená název databáze a předání parametru je třeba přidat symbol „@“.

CREATE PROCEDURE .
AS
Execute a Stored Procedure
Exec is the command for the execution of the procedure.
EXEC Procedure_name

Porovnání uložené procedury a funkcí

Uložené procedury a funkce lze použít k dosažení stejné funkce. Můžeme přizpůsobit jak procedury, tak funkce. Rozdíl mezi nimi je, že funkce jsou navrženy tak, aby odesílaly svůj výstup do Transact SQL, a uložené procedury jsou navrženy tak, aby vracely výstup do dotazu, a také mohou vracet výstup do T-SQL. Aplikace mohou mít vstup z uložených procedur, zatímco uživatelem definované funkce mohou vracet proměnné tabulky a nemají oprávnění měnit nastavení prostředí ani prostředí operačního systému.

Databáze společnosti

SpolečnostKategoriePoložka
Tarlepoživatinycookies
Tarlepoživatinybramborové hranolky
Lakmekosmetikartěnka
BrisketpotravinyLněná semínka
Brisketpoživatinysušenky
Brisketpotravinyolej
olekosmetikaLak na nehty
olekosmetikaKartáč na vlasy

Příklad uložené procedury

Následující příkaz SQL vytvoří uloženou proceduru, která vybere společnost

VYTVOŘIT POSTUP VyberteVšechny příklady

TAK JAKO

VYBRAT * OD SPOLEČNOSTI GO;

Uloženou proceduru výše proveďte následujícím způsobem:

Při provádění výše uložené procedury můžeme použít následující příkaz:

EXEC SelectAllExample;

Příklad uložené procedury s jedním parametrem

Následující příkaz SQL vytvoří uloženou proceduru s jedním parametrem, který má být předán a vybere společnost s položkou jako parametr

VYTVOŘIT POSTUP SelectAllExample @item nvarchar (30)

TAK JAKO

VYBRAT * OD SPOLEČNOSTI WHERE item = @item GO;

Uloženou proceduru výše proveďte následujícím způsobem:

K provedení výše uložené procedury s jedním parametrem můžeme použít následující příkaz: EXEC SelectAllExample item = “cookies”;

Příklad uložené procedury s více parametry

Následující příkaz SQL vytvoří uloženou proceduru s více parametry, které jako parametr vyberou společnost s položkou a kategorií

VYTVOŘIT POSTUP SelectAllExample @item nvarchar (30), @ kategorie nvarchar (10)

AS SELECT * OD společnosti WHERE item = @ item AND category = @ category GO;

Uloženou proceduru výše proveďte následujícím způsobem:

K provedení výše uložené procedury s více parametry můžeme použít následující příkaz, který potřebujeme předat více parametrů oddělených čárkami: EXEC SelectAllExample item = ”cookies”, category = ”edibles”;

Výhody postupu v SQL

  • Zlepšení aplikace lze dosáhnout postupy. Pokud je procedura volána vícekrát v jedné aplikaci, pak se použije kompilovaná verze procedury.
  • Provoz mezi databází a aplikací lze snížit, protože velké příkazy jsou již do databáze vloženy a nemusíme ji zasílat znovu a znovu.
  • Pomocí procedur lze dosáhnout opětovného použití kódu, podobně jako funkce a metody práce v javě a dalších programovacích jazycích.

Nevýhody procedury v SQL

  • Uložené procedury spotřebovávají spoustu paměti. Je povinností správce databáze, aby rozhodl o horní hranici toho, kolik uložených procedur je možné pro konkrétní aplikaci.
  • Uložené procedury nelze debugovat pomocí MySQL.

Závěr: Co je postup v SQL

  • Do uložených programů mohou být zahrnuty jednoduché nevybrané příkazy včetně příkazů DML, jako je Vložit a odstranit, a také příkazy DDL, jako je Drop and Create.
  • Spotřeba paměti je větší, ale rychlost hledání může být snížena a opakovaná použitelnost kódu je výhodná.
  • Uložené procedury mohou být implementovány s nebo bez proměnných a mohou být provedeny předáním parametrů, pokud je to požadováno.

Doporučené články

Toto byl průvodce Co je postup v SQL. Zde jsme diskutovali strukturu, příklady, výhody a nevýhody postupu v SQL. Další informace naleznete také v následujících článcích -

  1. Co je SQL Server?
  2. Co je MySQL databáze
  3. MySQL OpenSource
  4. Co je to SQL