|
|
Opslået på 24/03/2019 21.20.05
|
|
|

forord
I dag vil jeg gennemgå brugen af triggers, selvom det generelt ikke anbefales at bruge triggers i projekter, men vi skal stadig forstå brugen af triggere.
Tekst
Brug af triggere. Forbered det bord, du vil bruge i dag. Opret en NewTest-tabel og en NewTest_log-tabel
#Triggere
Det er en særlig lagret procedure, der ikke kaldes af sig selv, men automatisk berøres ved at udføre en bestemt operation, som en begivenhed. Brug: Overvåg handlinger og suppler begrænsninger. I introduktionen nævnes det, at triggere generelt ikke anbefales til ydeevne og vedligeholdelse. I faktiske projekter er det generelt ikke let at opdage udløseren, hvilket vil medføre visse vanskeligheder ved senere vedligeholdelse.
Alle vores operationer på tabellens data er midlertidigt gemt i disse to tabeller,"indsat”,“slettet”。 Vi kan bruge disse to midlertidige tabeller til at registrere nogle data eller til at begrænse og ændre forretningen.
Lad os oprette en trigger til NewTest-tabellen:
Efter at have oprettet denne trigger, lad os slette tabeldataene "slet fra ADB.. NewTest", og derefter forespørgsler "Vælg * fra ADB.. NewTestDet blev konstateret, at dataene i denne tabel ikke var slettet. Det er på grund af den trigger, vi har skabt, at når tabeldataene slettes, udløses erklæringen om at tilføje nye data. Vi kan bruge triggere til at overvåge ændringer i tabeldata og registrere relevante logfiler.
Opret en trigger for NewTest-tabellen, og når nye data tilføjes, logger vi dataene til den relevante logtabel:
Udfør nye udsagn"INSERT [dbo]. [NewTest] ([Navn], [Alder], [Køn], [Beløb]) VÆRDIER (N'Xiaohuang', 18, N'm', 20)Vi kommer indNewTest_log"Tabellen genererer også en post, der registrerer operationstid, operationstype og landingsperson osv.
Så hvordan vurderer vi i triggeren, at dataene er blevet slettet, ændret og tilføjet til operationen? Jeg skal stadig kigge på de to midlertidige tabeller "indsat" og "slettet"
Ny operation: Der er data i den indsatte tabel, men der er ingen data i den slettede tabel. Sletningsoperation: Der er ingen data i den indsatte tabel, og der er data i den slettede tabel. Ændr operationen: Der er data i den indsatte tabel (nye data), og der er data i den slettede tabel (gamle data).
Vi kan bruge dataene i disse to midlertidige tabeller til at vurdere de tilsvarende operationer og derefter udføre vores tilsvarende forretningsoperationer
Epilog
Cuties, fundamentet for databasen er ophørt, og næste del vil registrere, hvordan man gendanner dataene efter fejlagtig slettelse og ændringer ved en fejl.
|
Tidligere:Automatisk indtastning med håndtag kan ikke klikkes for at bekræfte operationenNæste:200 bøger såsom Java e-bøger og interviewspørgsmål
|