Задание triggerid/ protseduurid
Create table kasutajad(
kasutajadID int PRIMARY KEY identity(1,1),
nimi varchar(15),
perenimi varchar(15),
sünnikuupäev date);
Create table töölised(
töölisedID int PRIMARY KEY identity(1,1),
kuupäev date,
toiming varchar(15),
palg int,
kasutajaID int foreign key References kasutajad(kasutajadID));
Create table logi(
logiID int PRIMARY KEY identity(1,1),
kuupaev DATETIME,
toiming varchar(100),
andmed TEXT,
kasutaja varchar(100)
);
insert into kasutajad(nimi, perenimi, sünnikuupäev)
values (‘Max’, ‘Maximov’, 20.03);
insert into töölised(kuupäev, toiming, andmed, kasutaja)
values (‘Max’, ‘Maximov’, 20.03);
SELECT * FROM kasutajad;
SELECT * FROM linnad;
use Advokaadibüroo
go
CREATE PROCEDURE LisaTööline
@nimi varchar(15),
@perenimi varchar(15),
@sünnikuupäev date
AS
BEGIN
INSERT INTO kasutajad (nimi, perenimi, sünnikuupäev)
VALUES (@nimi, @perenimi, @sünnikuupäev);
INSERT INTO töölised (kuupäev, toiming, palg, kasutajaID)
VALUES (GETDATE(), ‘Добавление нового сотрудника’, 0.00, SCOPE_IDENTITY());
create trigger Update_töölised
ON kasutajad
FOR UPDATE
AS
BEGIN
INSERT INTO logi(kuupaev, toiming, andmed, kasutaja)
SELECT GETDATE(), ‘Обновление данных в таблице kasutajad.’,
CONCAT(‘Измененные данные: ‘, deleted.nimi, ‘, ‘, deleted.perenimi, ‘, ‘, deleted.sünnikuupäev,
‘новые данные: ‘, inserted.nimi, ‘, ‘, inserted.perenimi, ‘, ‘, inserted.sünnikuupäev),
user
FROM deleted
INNER JOIN inserted ON deleted.kasutajadID = inserted.kasutajadID;
END