Forskjellen Mellom Utløsere Og Lagrede Prosedyrer

Forskjellen Mellom Utløsere Og Lagrede Prosedyrer
Forskjellen Mellom Utløsere Og Lagrede Prosedyrer

Video: Forskjellen Mellom Utløsere Og Lagrede Prosedyrer

Video: Forskjellen Mellom Utløsere Og Lagrede Prosedyrer
Video: Behandlingsprogram for muskel- og skjelettlidelser 2024, November
Anonim

Utløsere vs lagrede prosedyrer

I en database er en trigger en prosedyre (kodesegment) som utføres automatisk når noen spesifikke hendelser oppstår i en tabell / visning. Blant andre bruksområder brukes utløsere hovedsakelig for å opprettholde integritet i en database. En lagret prosedyre er en metode som kan brukes av applikasjoner som får tilgang til en relasjonsdatabase. Vanligvis brukes lagrede prosedyrer som en metode for å validere data og kontrollere tilgang til en database.

Hva er utløsere?

En utløser er en prosedyre (kodesegment) som utføres automatisk når noen spesifikke hendelser oppstår i en tabell / visning av en database. Blant andre bruksområder brukes utløsere hovedsakelig for å opprettholde integritet i en database. Utløsere brukes også til å håndheve forretningsregler, revidere endringer i databasen og replikere data. De vanligste utløserne er Data Manipulation Language (DML) -utløsere som utløses når data manipuleres. Noen databasesystemer støtter triggere som ikke er data, som utløses når DDL-hendelser (Data Definition Language) oppstår. Noen eksempler er utløsere som utløses når tabeller opprettes, under forpliktelse eller tilbakeføring, osv. Disse utløserne kan spesielt brukes til revisjon. Oracle-databasesystemet støtter utløsere på skjema-nivå (dvs.utløsere utløst når databaseskjemaer er endret) som Etter opprettelse, Før endring, Etter endring, før slipp, etter slipp osv. For hver utsagnstype utløser.

Hva er lagrede prosedyrer?

En lagret prosedyre er en metode som kan brukes av et program som får tilgang til en relasjonsdatabase. Vanligvis brukes lagrede prosedyrer som en metode for å validere data og kontrollere tilgang til en database. Hvis noen databehandlingsoperasjoner krever at flere SQL-setninger utføres, implementeres slike operasjoner som lagrede prosedyrer. Når du påkaller en lagret prosedyre, må en CALL- eller EXECUTE-uttalelse brukes. Lagrede prosedyrer kan gi resultater (for eksempel resultater fra SELECT-setningene). Disse resultatene kan brukes av andre lagrede prosedyrer eller av applikasjoner. Språk som brukes til å skrive lagrede prosedyrer støtter vanligvis kontrollstrukturer, for eksempel hvis, mens, for osv. Avhengig av databasesystemet som brukes, kan flere språk brukes til å implementere lagrede prosedyrer (f.eks. PL / SQL og java i Oracle, T- SQL (Transact-SQL) og. NET Framework i Microsoft SQL Server). Videre bruker MySQL sine egne lagrede prosedyrer.

Hva er forskjellen mellom utløsere og lagrede prosedyrer?

En utløser er en prosedyre (kodesegment) som utføres automatisk når noen spesifikke hendelser oppstår i en tabell / visning av en database, mens en lagret prosedyre er en metode som kan brukes av et program som får tilgang til en relasjonsdatabase. Utløsere utføres automatisk når hendelsen som utløseren skal svare på inntreffer. Men for å utføre en lagret prosedyre, må en spesifikk CALL- eller EXECUTE-uttalelse brukes. Feilsøkingsutløsere kan være vanskeligere og vanskeligere enn feilsøking av lagrede prosedyrer. Utløsere er veldig nyttige når du vil være sikker på at noe skjer når en bestemt hendelse inntreffer.

Anbefalt: