SQL Trigger Slettet

SQL Trigger Slettet


SQL-utløser er deler av SQL-kode som kjøres på en bestemt hendelse eller når databasen statlige kampene spesifiserte betingelser. Selv om syntaks for innstilling og sletting av triggere varierer litt på tvers av ulike databasesystemer, utløser er vanlig i nesten alle store database-prosjekt. Database utviklere ofte bruker SQL triggere for automatisert logg eller analytisk funksjonalitet, som de kan konfigureres til å opprette eller oppdatere databasen etter en spørring er kjørt.

årsaker

SQL-triggere kan slettes manuelt via en "DROP TRIGGER" statement eller automatisk som en bivirkning av en annen SQL-spørring. Utviklere sette opp en selv slette utløser eller en utløser som sletter en annen trigger for gitte betingelser. Disse trigger slettinger endre semantikk av databasen i form av analytisk behandling, krever nøye oppmerksomhet og gjennomgang av databasen utvikleren. Du kan også slette triggere som en bivirkning av en annen spørring, for eksempel websiden prosessorer, forutsatt at spørringen byrder har tillatelse til å endre triggere for denne databasen.

effekter

Slette en trigger er en normal funksjon av databasen, særlig når det gjøres manuelt eller automatisk i henhold til en godt gjennomtenkt database plan. Når en utløser sletting er uventet, men konsekvensene på databasen semantikk er alvorlige. Siden utløser ofte logger eller sortere database statistikk for analytisk bruk, sletting av denne logikken resulterer i ufullstendige logger eller feil statistikk. Avhengig av hvor mye organisasjonen er avhengig av databasen, kan dette skape kaos på forretningspraksis eller rett og slett føre til en ulempe for brukere av systemet.

Gjenkjenning

Dessverre, fordi SQL slette uttalelser ikke er logget som standard, er det svært vanskelig å oppdage en slettet SQL trigger. Hvis databasen er liten nok, kan systemadministratorer vanligvis antar at hvis en trigger har blitt slettet. De gjør dette ved å se etter manglende bivirkninger av avtrekkeren; for eksempel manglende loggoppføringer. SQL "SHOW trigger" kommandoen tillater utviklere å vise alle aktive utløsere og deres tilknyttede forhold i databasen. For mer komplekse databasesystemer, holde en streng logg over alle trigger operasjoner, på grunn av deres evne til å endre database semantikk i uforutsette måter.

Forebygging

Database utvikling best praksis bidra til å beskytte semantikk av data fra å bli endret uforvarende ved feil eller feil i databasen kode. For å forhindre uventede semantiske endringer, for eksempel SQL trigger sletting, utløse uttalelser bør ikke oppdatere, sette inn eller slette en annen trigger. Håndtere alle utløser manuelt av database utviklere, holder nøye oversikt over de tilhørende endringer. Alle database utviklere bør være klar over trigger operasjoner over databasen, for å eliminere forvirring hvis en trigger blir slettet.