Rozdiel medzi spúšťačom a postupom

Autor: Laura McKinney
Dátum Stvorenia: 1 Apríl 2021
Dátum Aktualizácie: 13 Smieť 2024
Anonim
Rozdiel medzi spúšťačom a postupom - Technológie
Rozdiel medzi spúšťačom a postupom - Technológie

Obsah


Spúšťač a postup sú súčasťou pokročilého jazyka SQL. Spúšťač aj procedúra vykonávajú pri vykonávaní určitú úlohu. Základný rozdiel medzi spúšťačom a postupom je, že spúšť vykonáva automaticky pri výskyte udalosti, zatiaľ čo procedúra sa vykoná, keď sa explicitne použije.

Poďme diskutovať o niektorých ďalších rozdieloch medzi spúšťačom a procedúrou pomocou porovnávacej tabuľky uvedenej nižšie.

  1. Porovnávacia tabuľka
  2. definícia
  3. Kľúčové rozdiely
  4. záver

Porovnávacia tabuľka

Základ pre porovnanieTriggerspostupy
základné Automaticky sa vykonajú pri výskyte zadanej udalosti.Môžu byť vykonané kedykoľvek je to potrebné.
povolaniaSpúšťače nemožno volať v rámci postupu.Môžete však zavolať procedúru vnútri spúšťača.
parameter Parametrom nemôžeme odovzdať spúšťače.Parametre môžeme odovzdať procedúram.
spiatočnýSpúšťač nikdy nevráti hodnotu pri vykonaní.Procedúra môže po vykonaní vrátiť hodnotu / y.


Definícia spúšťača

Spúšťač je ako postup, ktorý sa automaticky spustí pri výskyte zadanej udalosti. Rovnako ako v prípade procedúry, spúšť nemusí byť explicitne volaná. Spúšťače sa vytvárajú na vykonanie určitej úlohy v reakcii na výskyt určitej zadanej udalosti.

Spúšť možno vyvolať v reakcii na DDL výpisy (ODSTRÁNIŤ, VLOŽIŤ alebo AKTUALIZOVAŤ) alebo DML príkazy (ODSTRÁNIŤ, VLOŽIŤ alebo AKTUALIZOVAŤ) alebo k niektorým databázovým operáciám (SERVERERROR, LOGON, LOGOFF, STARTUP alebo SHUTDOWN).

Spúšťač sa skladá z troch komponentov, ako je uvedené nižšie:

  • udalosť: Udalosť je výskyt nejakej udalosti, ktorá spôsobí vykonanie spúšťača. Spúšťač môže byť nariadený na vykonanie jedného PRED udalosť nastane alebo môže byť nariadené jej vykonanie PO vykonanie udalosti.
  • podmienka: Je voliteľnou súčasťou spúšťača. Ak nie je uvedené, spustí sa spúšť, keď nastane zadaná udalosť. Ak je zadaná podmienka, skontroluje pravidlá, aby určila, či sa má spustiť spúšť.
  • akčné: Action je množina príkazov SQL, ktoré sa vykonajú po vykonaní spúšťača.

Všeobecná forma vytvorenia udalosti je uvedená nižšie:


VYTVORIŤ TRIGGER PREDTÝM POTOM AKCIA PODMIENKY;

Tu je podmienka voliteľná.

Definovanie postupov

Procedúra môže byť braná ako programová jednotka, vytvorená na vykonanie nejakej úlohy a je uložená v databáze. Vyvolávajú sa príkazom SQL, kedykoľvek je to potrebné. Procedúry sú ako funkcie definované používateľom, ktoré sú definované vývojármi. Postupy je možné vyvolať pomocou CALL alebo EXECUTE.

Postupy sú užitočné v nasledujúcich situáciách:

  • Ak postup vyžaduje niekoľko ďalších aplikácií, môže byť uložený na serveri, aby ich mohol vyvolať ľubovoľná aplikácia. Zníži sa tým úsilie o duplikáciu postupu z jednej databázy do druhej a tiež sa zlepší modularita softvéru.
  • Keď sa postup vykonáva na serveri, zníži sa tým prenos údajov a tiež sa znížia náklady na komunikáciu.
  • Procedúry sa môžu použiť na kontrolu zložitých obmedzení, ktoré sú nad rámec spúšťacej schopnosti.

Poďme diskutovať o všeobecnej forme vytvorenia postupu:

VYTVORIŤ POSTUP () NÁVRATY ;

Tu sú parametre a miestne vyhlásenia voliteľné. Uvádzajú sa iba vtedy, keď sú potrebné. Vyhlásenie uvedené nižšie popisuje vyvolanie postupov.

CALL () ;

  1. Primárny rozdiel medzi triggerom a procedúrou je ten, že trigger je príkaz, ktorý sa vyvolá automaticky, keď nastane udalosť. Na druhej strane sa postup uplatňuje vždy, keď je to potrebné.
  2. Jeden môže definovať postup vo vnútri spúšťa. Spúšťač však nikdy nie je definovaný v rámci postupu, pretože spúšťač sa musí vyvolať automaticky pri výskyte akejkoľvek udalosti.
  3. Môžeme odovzdať parametre procedúram, ale nemôžeme odovzdať parametre na spustenie, pretože to nie je vyvolané nami.
  4. Procedúra môže vrátiť hodnoty parametrov alebo kód, ale spúšť nemôže.

záver:

Spúšťače sú užitočné, ale vyhýbajú sa im, ak pre ne existuje nejaká alternatíva, pretože zvyšuje zložitosť údajov. Spúšťače sú niekedy tiež nahradené vhodným postupom.