Razlika med sprožilci in shranjenimi postopki

Sprožilec proti shranjenim postopkom

V bazi podatkov je sprožilec postopek (segment kode), ki se samodejno izvede, ko se v tabeli / pogledu pojavijo nekateri specifični dogodki. Med drugimi načini uporabe se za vzdrževanje integritete v bazi podatkov uporabljajo predvsem sprožilci. Shranjeni postopek je metoda, ki jo lahko uporabljajo aplikacije, ki dostopajo do relacijske baze podatkov. Shranjeni postopki se običajno uporabljajo kot metoda za potrjevanje podatkov in nadzor dostopa do baze podatkov.

Kaj so sprožilci?

Sprožilec je postopek (segment kode), ki se samodejno izvede, ko se v tabeli / pogledu baze podatkov pojavijo nekateri specifični dogodki. Med drugimi načini uporabe se za vzdrževanje integritete v bazi podatkov uporabljajo predvsem sprožilci. Sprožilci se uporabljajo tudi za uveljavljanje poslovnih pravil, revidiranje sprememb v bazi in podvajanje podatkov. Najpogostejši sprožilci so sprožilci jezika za upravljanje podatkov (DML), ki se sprožijo pri manipulaciji s podatki. Nekateri sistemi baz podatkov podpirajo sprožilce nepodatkovnih podatkov, ki se sprožijo, ko pride do dogodkov DDL-ja. Nekaj ​​primerov so sprožilci, ki se sprožijo, ko se ustvarijo tabele, med operacijami odobritve ali prevračanja itd. Te sprožilce lahko še posebej uporabimo za revizijo. Oracle sistem baz podatkov podpira sprožilce ravni sheme (tj. Sprožilce, ki se sprožijo, ko so sheme baz podatkov spremenjene), na primer Po ustvarjanju, Pred spreminjanjem, Po spremembi, Pred padcem, Po padcu itd. Štiri glavne vrste sprožilcev, ki jih podpira Oracle, so sprožilci ravni vrstic, Sprožilci nivoja stolpca, sprožilci za vsako vrsto vrstice in za vsako vrsto vrste izjave.

Kaj so shranjeni postopki?

Shranjeni postopek je metoda, ki jo lahko uporabi aplikacija, ki dostopa do relacijske baze podatkov. Shranjeni postopki se običajno uporabljajo kot metoda za potrjevanje podatkov in nadzor dostopa do baze podatkov. Če neka operacija obdelave podatkov zahteva izvedbo več stavkov SQL, se takšne operacije izvedejo kot shranjeni postopki. Pri pozivanju shranjene procedure je treba uporabiti stavek CALL ali EXECUTE. Shranjeni postopki lahko vrnejo rezultate (na primer rezultate iz stavkov SELECT). Te rezultate lahko uporabijo drugi shranjeni postopki ali aplikacije. Jeziki, ki se uporabljajo za pisanje shranjenih postopkov, ponavadi podpirajo nadzorne strukture, kot če, čeprav, za itd. Glede na uporabljeni sistem baz podatkov lahko za izvajanje shranjenih postopkov uporabimo več jezikov (npr. PL / SQL in java v Oracle, T- SQL (Transact-SQL) in .NET Framework v strežniku Microsoft SQL Server). Poleg tega MySQL uporablja lastne shranjene postopke.

Kakšna je razlika med sprožilci in shranjenimi postopki?

Sprožilec je postopek (segment kode), ki se samodejno izvede, ko se v tabeli / pogledu baze podatkov pojavijo določeni dogodki, medtem ko je shranjeni postopek metoda, ki jo lahko uporabi aplikacija, ki dostopa do relacijske baze podatkov. Sprožilci se izvedejo samodejno, ko se zgodi dogodek, na katerega naj bi se sprožilec odzval. Toda za izvedbo shranjenega postopka je treba uporabiti poseben stavek CALL ali EXECUTE. Sprožniki razhroščevanja so lahko težji in zahtevnejši od odpravljanja napak shranjenih postopkov. Sprožilci so zelo koristni, če želite zagotoviti, da se ob določenem dogodku nekaj zgodi.