Nimetu
Siin küsitakse linnanimi kõigepealt eraldi muutujasse, et
seda oleks mugavam päästiku raames toimuva lisamise juures kasutada.
CREATE TRIGGER linnamuutus
ON linnad
FOR INSERT
AS
INSERT INTO logi (aeg, toiming, andmed)
SELECT GETDATE(), 'lisati', linnanimi
FROM inserted
Käivitus
Kui juhtutakse linnade tabelisse andmeid lisama, siis näen kahel korral teateid, et "ühele reale
mõjus muutus". Üks teade on siis algse lisamise kohta ning teine teade päästiku abil toimunud
logikande kohta.
INSERT INTO linnad(linnanimi, rahvaarv)
VALUES ('Valga', 25000)
(1 row(s) affected)
(1 row(s) affected)
Nõnda iga muutuse korral.
INSERT INTO linnad(linnanimi, rahvaarv)
VALUES ('Jõgeva', 17000)
Ja kui edasi minna ja vaadata, mis logisse kirjutatud, siis on teated ilusti näha. Mitmes sündmus,
millal, mida tehti ja millise linnaga on tegemist.
SELECT * FROM logi
1 2006-08-03 08:39:01.693 lisati Valga
2 2006-08-03 08:39:18