Rozdíl mezi zobrazeným a uloženým postupem

Zobrazit vs Uložená procedura
 

Zobrazení a uložené procedury jsou dva typy databázových objektů. Zobrazení jsou druh uložených dotazů, které shromažďují data z jedné nebo více tabulek. Zde je syntaxe pro vytvoření pohledu

vytvořit nebo nahradit zobrazovaný název pohledu

tak jako

select_statement;

Uložená procedura je předem sestavená sada příkazů SQL, která je uložena v databázovém serveru. Každá uložená procedura má volací jméno, které se používá k jejich volání uvnitř jiných balíčků, procedur a funkcí. Toto je syntaxe (v ORACLE) pro vytvoření uložené procedury,

vytvořit nebo nahradit procedurename procedurename (parametry)

je

začít

prohlášení;

výjimka

výjimka_handling

konec;

Pohled

Pohled funguje jako virtuální tabulka. Skryje výběrové prohlášení uvnitř svého těla. Tento příkaz select může být velmi složitý, který bere data z několika tabulek a pohledů. Jinými slovy, pohled je tedy pojmenovaný příkaz select, který je uložen v databázi. Pohled lze použít ke skrytí logiky za vztahy tabulky před koncovými uživateli. Protože pohled je výsledkem uloženého dotazu, nezachovává žádná data. Shromažďuje data ze základních tabulek a ukazuje. Pohledy také hrají důležitou roli v zabezpečení dat. Když vlastník tabulky potřebuje ukázat koncovým uživatelům pouze sadu dat, je dobrým řešením vytvoření pohledu. Pohledy lze rozdělit do dvou kategorií

  • Aktualizovatelná zobrazení (Pohledy, které lze použít pro INSERT, UPDATE a DELETE)
  • Neaktualizovatelná zobrazení (Pohledy, které nelze použít pro INSERT, UPDATE a DELETE)

Aktualizovatelná zobrazení nemohou zahrnovat následující,

Operátoři množin (INTERSECT, MINUS, UNION, UNION ALL)

ODLIŠNÝ

Skupinové agregační funkce (AVG, COUNT, MAX, MIN, SUM, atd.)

Klauzula SKUPINY PODLE

OBJEDNÁVKA PODLE klauzule

PŘIPOJIT PODLE

START S Doložkou

Výraz kolekce ve výběrovém seznamu

Dílčí dotaz ve výběrovém seznamu

Připojte se k produktu Query 

Uložené procedury

Uložené procedury jsou pojmenovány programovací bloky. Musí mít jméno, na které mají volat. Uložené procedury přijímají parametry jako uživatelský vstup a zpracovávají se podle logiky postupu a poskytují výsledek (nebo provádějí konkrétní akci). Deklarace proměnných, přiřazení proměnných, kontrolní příkazy, smyčky, dotazy SQL a další funkce / volání procedur / balíčků mohou být uvnitř těla procedur. 

Jaký je rozdíl mezi Zobrazit a uložená procedura?

Podívejme se na rozdíly mezi těmito dvěma.

• Pohledy fungují jako virtuální tabulky. Lze je použít přímo v blízkosti dotazů SQL (výběr), ale procedury nelze použít v blízkosti dotazů.

• Pohledy mají jako své tělo pouze příkaz select, ale procedury mohou mít jako své tělo deklarace proměnných, přiřazení proměnných, kontrolní příkazy, smyčky, dotazy SQL a další volání funkcí / procedur / balíčků..

• Procedura přijímá parametry k provedení, ale pohledy nechtějí provádět parametry.

• Typy záznamů lze vytvořit z pohledů pomocí% ROWTYPE, ale pomocí postupů nelze typy záznamů vytvořit.

• SQL rady lze použít uvnitř příkazu select view pro optimalizaci plánu provádění, ale SQL rady nelze použít v uložených procedurách.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK a DEBUG lze udělit na pohledy, ale procedurám lze udělit pouze EXECUTE a DEBUG..