XAMPP PÄÄSTIKUD

create database trigerTARpv23
use trigerTARpv23
 
-- tabeli toode
create table toode(
toodeId int primary key AUTO_INCREMENT,
toodeNimi varchar(50),
hind int);
 
Create table logi(
id int primary key AUTO_INCREMENT,
kasutaja varchar (100),
kuupaev datetime,
sisestatudAndmed text);

Teine tabel

LISAMINE

INSERT INTO logi(kasutaja, kuupaev, sisestatudAndmed)
VALUES (
User(),
NOW(),
CONCAT('lisatud andmed', NEW.toodeNimi, ',',New.hind))

KUSTUTAMINE

INSERT INTO logi(kasutaja, kuupaev, sisestatudAndmed)
VALUES (
User(),
NOW(),
CONCAT('kustutatud andmed - ', OLD.toodeNimi, ', ', OLD.hind))

UUENDAMINE

INSERT INTO logi(kasutaja, kuupaev, sisestatudAndmed)
VALUES (
User(),
NOW(),
CONCAT('vanad andmed - ', OLD.toodeNimi, ' - ', OLD.hind, '\n uued andmed - ', NEW.toodeNimi, ' - ',NEW.hind))

KONTROLL

ISESEISEV
use KinoTARpv23
 
CREATE TABLE Kava  (
 filmID INT AUTO_INCREMENT PRIMARY KEY,
 filmiNimi VARCHAR (255) NOT NULL,
 naitamiseKuupaev DATE NOT NULL,
 hind INT NOT NULL
 );
 
CREATE TABLE logi (
    logiID INT AUTO_INCREMENT PRIMARY KEY,
    kasutaja VARCHAR(100) NOT NULL,
    kuupaev DATETIME NOT NULL,
    toiming varchar(255) NOT NULL,
    sisestatudAndmed text
);

CREATE TABLE Seanss (
    seansID INT AUTO_INCREMENT PRIMARY KEY,
    filmID INT,
    seansiKuupaev DATETIME NOT NULL,
    saal INT NOT NULL,
    FOREIGN KEY (filmID) REFERENCES Kava(filmID)
);

ALTER TABLE Kava ADD seansID INT;
ALTER TABLE Kava ADD CONSTRAINT fk_seans
FOREIGN KEY (seansID) REFERENCES Seanss(seansID);

Lisamine trigger

Kava lisamine

INSERT INTO logi (kasutaja, kuupaev, toiming, sisestatudAndmed)
SELECT 
USER(),NOW(),'Seanss on lisatud',
CONCAT('filmID=', NEW.filmID, ', seanssKuupaev=', NEW.seansiKuupaev, ', saal=', NEW.saal)

Seans lisamine

INSERT INTO logi (kasutaja, kuupaev, toiming, sisestatudAndmed)
SELECT 
USER(),NOW(),'Seanss on lisatud',
CONCAT('filmID=', NEW.filmID, ', seanssKuupaev=', NEW.seansiKuupaev, ', saal=', NEW.saal)

UUENDAMINE

Kava uuendamine

INSERT INTO logi (kasutaja, kuupaev, toiming, sisestatudAndmed)
SELECT 
USER(),NOW(),'Film on uuendatud',
CONCAT('Vanad andmed - filmiNimi=', OLD.filmiNimi, ', naitamiseKuupaev=', OLD.naitamiseKuupaev, ', hind=', OLD.hind,' Uuendatud andmed - filmiNimi=', NEW.filmiNimi, ', naitamiseKuupaev=', NEW.naitamiseKuupaev, ', hind=', NEW.hind)

Seanss uuendamine

INSERT INTO logi (kasutaja, kuupaev, toiming, sisestatudAndmed)
SELECT 
USER(), NOW(), 'Seanss on uuendatud',
CONCAT('Vanad andmed - filmID=', OLD.filmID, ', seanssKuupaev=', OLD.seansiKuupaev, ', saal=', OLD.saal,' Uuendatud andmed - filmID=', NEW.filmID, ', seansiKuupaev=', NEW.seansiKuupaev, ', saal=', NEW.saal)

logi

KASUTAJA

USE KinoTARpv23;
 
GRANT SELECT ON dbo.Kava TO tootaja;
GRANT INSERT ON dbo.Kava TO tootaja;
GRANT UPDATE ON dbo.Kava TO tootaja;

KONTROLL

SELECT

SELECT * FROM logi;

INSERT

INSERT INTO Kava(
    filmiNimi, 
    naitamiseKuupaev,
	hind
)
VALUES (
    'Kontroll film 2',
    '2912-12-12',
    5
);

UPDATE

UPDATE Kava SET filmiNimi = 'uus nimi'
WHERE filmID=2;
SELECT * FROM Kava;

DELETE

DELETE FROM Kava WHERE filmID=1; 

root logi kontroll

Scroll to Top