Veronika Milovzorova portfolio/ eng

SQL JA XAMPP TRIGGERID

sql server

1.
Tabel autod
väljad: AutodID, AutoMark, Model, Väljastamisaasta, Hind

CREATE TABLE Auto(
autoID int primary key identity(1,1),
automark varchar(50),
model varchar(50),
valjastamisaasta int,
hind int
);

INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Audi','vana','1997','50732')
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Honda','vintage','1989','90234')
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('BMW','uus','2015','70999')
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('mustang','uus','2019','90012')
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Benz','vana','1976','10345')

2.
LOGI. Kuupaev, Kasutaja; Andmed, Tegevus

CREATE TABLE logi(
    id int PRIMARY KEY identity (1,1),
    kuupaev datetime,
    kasutaja varchar(100),
    andmed TEXT,
	tegevus varchar(100))

3.
Insert ja Delete trgirid

INSERT

CREATE TRIGGER autolisamine
ON Auto
FOR INSERT
AS
INSERT INTO logi(kuupaev, kasutaja, andmed, tegevus)
SELECT GETDATE(), USER,
CONCAT(inserted.automark, ', ', inserted.model, ', ', inserted.valjastamisaasta, ', ', inserted.hind),
'auto on lisatud'
FROM inserted

INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Audi','vintage','2000','70839')

DELETE

CREATE TRIGGER autokustutamine
ON Auto
FOR DELETE
AS
INSERT INTO logi(kuupaev, kasutaja, andmed, tegevus)
SELECT GETDATE(), USER,
CONCAT(deleted.automark, ', ', deleted.model, ', ', deleted.valjastamisaasta, ', ', deleted.hind),
'auto on kustutatud'
FROM deleted

DELETE FROM Auto WHERE autoID=1

4(1) Admede lisamine ja select

CREATE PROCEDURE lisaauto
@automark varchar(50),
@model varchar(50),
@valjastamisaasta int,
@hind int
AS
BEGIN
    INSERT INTO Auto (automark, model, valjastamisaasta, hind)
    VALUES (@automark, @model, @valjastamisaasta, @hind);
END;

EXEC lisaauto 'Toyota', 'uus', 2022, 62654;

4(2) Andmete uuendamine sissetatud id järgi

CREATE PROCEDURE updateauto
    @autoID int,
    @automark varchar(50),
    @model varchar(50),
    @valjastamisaasta int,
    @hind int
AS
BEGIN
    UPDATE Auto
    SET automark = @automark,
        model = @model,
        valjastamisaasta = @valjastamisaasta,
        hind = @hind
    WHERE autoID = @autoID;
END;

EXEC updateauto @autoID = 3, @automark = 'Toyota', @model = 'uus', @valjastamisaasta = 2022, @hind = 60000;

logi

4(3) Kasutajate arvu leidmine

CREATE PROCEDURE CountAutos
AS
BEGIN
    SELECT COUNT(*) AS AutoCount FROM Auto;
END;

EXEC CountAutos;

xampp

1.
Tabel autod
väljad: AutodID, AutoMark, Model, Väljastamisaasta, Hind

CREATE TABLE Auto(
autoID int primary key AUTO_INCREMENT,
automark varchar(50),
model varchar(50),
valjastamisaasta int,
hind int
);

INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Audi','vana','1997','50732');
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Honda','vintage','1989','90234');
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('BMW','uus','2015','70999');
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('mustang','uus','2019','90012');
INSERT INTO Auto (automark, model, valjastamisaasta, hind)
VALUES ('Benz','vana','1976','10345');

tabel auto

2.
LOGI. Kuupaev, Kasutaja; Andmed, Tegevus

CREATE TABLE logi (
    id int primary key AUTO_INCREMENT,
    kuupaev datetime,
    kasutaja varchar(50),
    andmed varchar(255),
    tegevus varchar(255)
);

insert

DELETE

tabel auto

4(1) Admede lisamine

4(3) Kasutajate arvu leidmine

en_US