prt1-https://maximiljano.wordpress.com/2023/09/06/trigerrite-loomine-oma-ulesanne/
Ülesanne
Lisa tabel Myyk (myykID, kuupaev, arvutiID)
Tabelid on seotud omavahel Myyk.arvutiID=Arvutid.ID
koosta trigeri mis jälgib andmete lisamine ja uuendamine tabelis Myyk ja näitab arvuti komponenti ja hind
SQL server
Tabeli loomine
create table Myyk(
myykID int primary key identity(1,1),
kuupaev date)
alter table Myyk
add arvutiID int,
constraint arvuti_myyk foreign key(arvutiID) references Arvutid(id)

Triggerid
Esimene
CREATE TRIGGER MyykLisamine
ON Myyk
FOR INSERT
AS
INSERT INTO logi(kuupäev, _user, andmed, tegevus)
SELECT GETDATE(),
USER, concat(inserted.ArvutiID, ',komponentid: ', a.komponentid ,',hind: ',a.hind),
'Müük on lisatud'
FROM inserted
INNER JOIN Arvutid a ON inserted.arvutiID=a.id
Kontroll

Teine
CREATE TRIGGER Myykuuendamine
ON Myyk
FOR UPDATE
AS
INSERT INTO logi(kuupäev, _user, andmed, tegevus)
SELECT GETDATE(),
USER, concat(inserted.ArvutiID, ',komponentid: ', a.komponentid ,',hind: ',a.hind),
'Müük on uuendatud'
FROM inserted
INNER JOIN Arvutid a ON inserted.arvutiID=a.id
Kontroll

PHPMyAdmin
Loomine
create table Myyk(
myykID int primary key AUTO_INCREMENT,
kuupaev date);
alter table myyk
add arvutiID int,
add constraint arvuti_myyk foreign key(arvutiID)
references arvutid(id);

Triggerid
Esimene

Kontroll



Teine

Kontroll


