Spouštěče vs uložené procedury
V databázi je spouštěčem procedura (kódový segment), která se provádí automaticky, když se v tabulce / pohledu vyskytnou některé specifické události. Spouštěče se mimo jiné používají hlavně k udržení integrity v databázi. Uložená procedura je metoda, kterou mohou používat aplikace přistupující k relační databázi. Uložené procedury se obvykle používají jako metoda pro ověřování dat a řízení přístupu k databázi.
Co jsou spouštěče?
Spoušť je procedura (kódový segment), která se provádí automaticky, když se v tabulce / pohledu na databázi vyskytnou určité specifické události. Spouštěče se mimo jiné používají hlavně k udržení integrity v databázi. Spouštěče se také používají pro vymáhání obchodních pravidel, auditování změn v databázi a replikaci dat. Nejběžnější spouštěče jsou spouštěče jazyka DML (Data Manipulation Language), které se spouštějí při manipulaci s daty. Některé databázové systémy podporují ne-datové spouštěče, které se spouštějí, když dojde k událostem Data Definition Language (DDL). Některé příklady jsou spouštěče, které se spouštějí při vytváření tabulek, během operací potvrzení nebo vrácení zpět, atd. Tyto spouštěče lze použít zejména pro auditování. Databázový systém Oracle podporuje spouštěče na úrovni schématu (tj. Spouštění spouštěné při změně schémat databáze), jako jsou After Creation, Before Alter, After Alter, Before Drop, After Drop atd. Čtyři hlavní typy triggerů podporovaných Oracle jsou triggery na úrovni řádků, Spouštěče na úrovni sloupců, spouštěče pro každý typ řádku a spouštěče pro každý typ příkazu.
Co jsou uložené procedury?
Uložená procedura je metoda, kterou může použít aplikace přistupující k relační databázi. Uložené procedury se obvykle používají jako metoda pro ověřování dat a řízení přístupu k databázi. Pokud některá operace zpracování dat vyžaduje provedení několika příkazů SQL, jsou takové operace implementovány jako uložené procedury. Při vyvolání uložené procedury je třeba použít příkaz CALL nebo EXECUTE. Uložené procedury mohou vracet výsledky (například výsledky z příkazů SELECT). Tyto výsledky mohou být použity jinými uloženými procedurami nebo aplikacemi. Jazyky, které se používají k zápisu uložených procedur, obvykle podporují řídicí struktury, jako například, zda, zatímco, atd. V závislosti na použitém databázovém systému lze k implementaci uložených procedur použít několik jazyků (např. PL / SQL a java v Oracle, T- SQL (Transact-SQL) a .NET Framework v Microsoft SQL Server). MySQL dále používá své vlastní uložené procedury.
Jaký je rozdíl mezi aktivačními a uloženými procedurami?
Spoušť je procedura (kódový segment), která se provádí automaticky, když se vyskytnou některé specifické události v tabulce / pohledu na databázi, zatímco uložená procedura je metoda, kterou může použít aplikace přistupující k relační databázi. Spouští se automaticky, když nastane událost, na kterou má trigger reagovat. K provedení uložené procedury je však třeba použít konkrétní příkaz CALL nebo EXECUTE. Ladicí spouště mohou být těžší a složitější než ladění uložených procedur. Spouštěče jsou velmi užitečné, pokud se chcete ujistit, že se něco stane, když dojde k určité události.