Rozdíl Mezi Zobrazením A Uloženou Procedurou

Obsah:

Rozdíl Mezi Zobrazením A Uloženou Procedurou
Rozdíl Mezi Zobrazením A Uloženou Procedurou

Video: Rozdíl Mezi Zobrazením A Uloženou Procedurou

Video: Rozdíl Mezi Zobrazením A Uloženou Procedurou
Video: Multi-start metrický závit. Jak se to dělá. 2024, Listopad
Anonim

Zobrazit vs uložená procedura

Pohledy 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. Tady je syntaxe pro vytvoření zobrazení

vytvořit nebo nahradit pohled viewname

tak jako

select_statement;

Uložená procedura je předkompilovaná sada příkazů SQL, která je uložena na databázovém serveru. Každá uložená procedura má volací název, který se používá k jejich volání uvnitř jiných balíčků, procedur a funkcí. Toto je syntaxe (v ORACLE) k vytvoření uložené procedury, vytvořit nebo nahradit postup název_procesu (parametry)

je

začít

prohlášení;

výjimka

manipulace s výjimkou

konec;

Pohled

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

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

Aktualizovatelná zobrazení nemohou zahrnovat sledování, Nastavit operátory (INTERSECT, MINUS, UNION, UNION ALL)

ODLIŠNÝ

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

Klauzule GROUP BY

OBJEDNÁVKA PODLE klauzule

Klauzule CONNECT BY

ZAČNĚTE S Klauzulí

Výraz kolekce v seznamu Select

Dílčí dotaz v seznamu A Select List

Připojte se k dotazu

Uložené procedury

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

Jaký je rozdíl mezi zobrazením a uloženou procedurou?

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 postupy nelze použít v blízkosti dotazů.

• Pohledy mají jako 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ší funkce / procedury / balíčky.

• Procedura přijímá parametry k provedení, ale pohledy nechtějí, aby se parametry spouštěly.

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

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

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK a DEBUG lze udělit u pohledů, ale u procedur lze udělit pouze EXECUTE a DEBUG.

Doporučená: