Forume Ülesanne

Loomine ja kasutamine uus andmebaas “HobusedDb”

--Loomine HobusedDb
CREATE DATABASE HobusedDb;
--Kasutamine HobusedDb
USE HobusedDb;

Loomine tabel “Hobused”

--Loomine tabel Hobused
CREATE TABLE Hobused(
ID INT PRIMARY KEY IDENTITY(1,1),
Nimi VARCHAR(50),
Vanus INT,
Kiirus DECIMAL(5,2));

SELECT * FROM Hobused;

Loomine tabel “Logi”

--Loomine tabel Logi
CREATE TABLE Logi(
ID INT PRIMARY KEY IDENTITY(1,1),
Kuupaev DATETIME,
Andmed TEXT,
Kasutaja VARCHAR(40));

SELECT * FROM Logi;

Loomine triger “HobuseLisa”

--Loomine triger HobuseLisa
CREATE TRIGGER HobuseLisa
ON Hobused
FOR INSERT
AS
INSERT INTO Logi(Kuupaev, Andmed, Kasutaja)
SELECT 
GETDATE(),
CONCAT('Lisatud hobune: ',inserted.Nimi,
' | Vanus: ', inserted.Vanus, ' | ID: ', inserted.ID,
' | Ja kiirus', inserted.Kiirus),
SYSTEM_USER
FROM inserted;

Lisamine andmed “Hobused” tabelisse

--Lisamine andmed Hobused tabelisse
INSERT INTO Hobused(Nimi, Vanus, Kiirus)
VALUES ('Special Week', 4, 61),
('El Condor Pasa', 3, 64),
('Tokai Teio', 4, 64.3),
('TM Opera O', 4, 60.6),
('Hishi Amazon', 3, 71.6);

Kontrollimine

SELECT * FROM Hobused;
SELECT * FROM Logi;

Loomine triger “HobuseUuenda”

--Loomine triger HobuseUuenda
CREATE TRIGGER HobuseUuenda
ON Hobused
FOR UPDATE
AS INSERT INTO Logi(Kuupaev, Andmed, Kasutaja)
SELECT
GETDATE(),
CONCAT('Vana hobuse andmed: ', D.Nimi,
' | Vanus: ', D.Vanus, ' | ID: ', D.ID, ' | Ja kiirus: ', D.Kiirus,
' | Uued hobuse andmed: ', I.Nimi,
' | Vanus: ', I.Vanus, ' | ID: ', I.ID, ' | Ja kiirus ', I.Kiirus),
SYSTEM_USER
FROM deleted D INNER JOIN inserted I
ON D.ID = I.ID;

Uuendamine andmed “Hobused” tabelis

--Uuendamine andmed Hobused tabelis
UPDATE Hobused SET Nimi = 'Silence Suzuka', Vanus = 4, Kiirus = 75
WHERE Nimi = 'El Condor Pasa';

Kontrollimine

--Kontrollimine
SELECT * FROM Hobused;
SELECT * FROM Logi;

Loomine triger “HobuseKustuta”

--Loomine triger "HobuseKustuta"
CREATE TRIGGER HobuseKustuta
ON Hobused
FOR DELETE
AS
INSERT INTO Logi(Kuupaev, Andmed, Kasutaja)
SELECT
GETDATE(),
CONCAT('Kustutatud hobune: ', deleted.Nimi,
' | Vanus ', deleted.Vanus, ' | ID: ', deleted.ID, ' | Ja kiirus ', deleted.Kiirus),
SYSTEM_USER
FROM deleted;

Kustutamine andmed “Hobused” tabelist

--Kustutamine andmed Hobused tabelist
DELETE FROM Hobused WHERE ID = 5;

Kontrollimine

--Kontrollimine
SELECT * FROM Hobused;
SELECT * FROM Logi;

Loomine uus Login

Palun vabandust, ma juba tegin selle ja unustasin ekraanipildi teha.

Andmine GRANT-id HobuseDirektori

--Andmine GRANT-id HobuseDirektori
GRANT 
SELECT, UPDATE, DELETE
ON Hobused 
TO HobuseDirektor;