Triegrid ja protseduurid ülesanne


MICROSOFT SQL SERVER:

Create Table Telefoniteenus(
TelefoniteenusID int primary key identity (1,1),
kliendi_nimi varchar (40),
telefoninumbe varchar(15),
maksumus decimal(10,2),
 registreeritud_alates date);

CREATE TABLE logi(
 Id INT PRIMARY KEY identity(1,1),
Kuupaev DATETIME,
Kasutaja VARCHAR(100),
Andmed TEXT,
Tegevus varchar(100));

Trgerid:

TRIGER MIS JÄLGIB TABELISSE LISAMINE:

create trigger TelefoniteenusLisamine
On Telefoniteenus
For INsert
As
INSERT INTO logi(Kuupaev,Kasutaja,Andmed,Tegevus)
Select GETDATE(), USER, 
Concat(inserted.kliendi_nimi,', ', inserted.telefoninumbe, ', ', inserted.maksumus,', ', inserted.registreeritud_alates), 'Telefoniteenus on lisatud'
from inserted

Insert Into  Telefoniteenus (kliendi_nimi,telefoninumbe,maksumus,registreeritud_alates)
 Values ('Vlad Andreev','+37254885686',15,'2022-12-24');
 
 select * from Telefoniteenus;
 select * from logi;

TRIGER MIS JÄLGIB KUSTUTAMINE TABELIS:

create trigger TelefoniteenusKustutamine
On Telefoniteenus
For delete
As
INSERT INTO logi(Kuupaev,Kasutaja,Andmed,Tegevus)
Select GETDATE(), USER, 
Concat(deleted.kliendi_nimi,', ', deleted.telefoninumbe, ', ', deleted.maksumus,', ', deleted.registreeritud_alates), 'Telefoniteenus on kustatyd'
from deleted

Delete from Telefoniteenus where TelefoniteenusID = 1;

select * from Telefoniteenus;
 select * from logi;

Protseduurid:

Otsi telefoninumber järgi:

 CREATE PROCEDURE SelectTelefoniteenusbyNumber
    @usernumber varchar(15) 
AS
BEGIN
	select * from Telefoniteenus
	where telefoninumbe=@usernumber;
	end

Exec SelectTelefoniteenusbyNumber '+37254885686'; ##protsessi algus

Tabelisse lisamine:

CREATE PROCEDURE InsertTelefoniteenus
    @name varchar(80),
    @number varchar(80),
	@cost decimal(10,2),
    @member_since date
AS
BEGIN
    INSERT INTO Telefoniteenus (kliendi_nimi,telefoninumbe,maksumus,registreeritud_alates)
    VALUES (@name, @number,@cost, @member_since);
	select * from Telefoniteenus;
	end

exec InsertTelefoniteenus 'Artem Andreev','+37256766688',7.20,'2022-12-24'; ##protsessi algus

Muutus teenuste hinnas:

create procedure Update_maksmus
@updateID int,
@uusmaksmus decimal(10,2)
as
begin
update Telefoniteenus set maksumus = @uusmaksmus
where TelefoniteenusID=@updateID;
Select * from Telefoniteenus;
end
Exec Update_maksmus @updateID=2, @uusmaksmus =9.99 ; ##protsessi algus

XAMPP:

Create Table Telefoniteenus(
TelefoniteenusID int primary key AUTO_INCREMENT,
kliendi_nimi varchar (40),
telefoninumbe varchar(15),
maksumus decimal(10,2),
 registreeritud_alates date);

CREATE TABLE logi(
Id INT PRIMARY KEY AUTO_INCREMENT,
Kuupaev DATETIME,
Kasutaja VARCHAR(100),
Andmed TEXT,
Tegevus varchar(100));

Trgerid:

TRIGER MIS JÄLGIB TABELISSE LISAMINE:

INSERT INTO logi(Kuupaev,Kasutaja,Andmed,Tegevus)
Values( NOW(), USER(), 
Concat(New.kliendi_nimi,', ', New.telefoninumbe, ', ', NEw.maksumus,', ', New.registreeritud_alates), 'Telefoniteenus on lisatud')

Insert Into Telefoniteenus (kliendi_nimi,telefoninumbe,maksumus,registreeritud_alates)
Values ('Vlad Andreev','+37254885686',15,'2022-12-24');

select * from Telefoniteenus;
select * from logi;

Telefoniteenus tabel:

Logi tabel:

TRIGER MIS JÄLGIB KUSTUTAMINE TABELIS:

INSERT INTO logi(Kuupaev,Kasutaja,Andmed,Tegevus)
VALUES(NOW(), USER(), 
Concat(old.kliendi_nimi,', ', old.telefoninumbe, ', ', old.maksumus,', ', old.registreeritud_alates), 'Telefoniteenus on lisatud')
Delete from Telefoniteenus where TelefoniteenusID = 1;

select * from Telefoniteenus;
 select * from logi;

Telefoniteenus tabel:

Logi tabel:

Protseduurid:

Otsi telefoninumber järgi:

BEGIN
	select * from Telefoniteenus
	where telefoninumbe=usernumber;
	end
call SelectTelefoniteenusbyNumber ('+37254885686'); ##protsessi algus

Telefoniteenus tabel:

Tabelisse lisamine:

BEGIN
    INSERT INTO Telefoniteenus (kliendi_nimi,telefoninumbe,maksumus,registreeritud_alates)
    VALUES (name, number,cost, member_since);
	select * from Telefoniteenus;
	end
 call InsertTelefoniteenus('Artem Andreev','+37256766688',7.20,'2022-12-24'); ##protsessi algus

Telefoniteenus tabel:

Muutus teenuste hinnas:

begin
update Telefoniteenus set maksumus = uusmaksmus
where TelefoniteenusID=updateID;
Select * from Telefoniteenus;
end
call Update_maksmus (2, 9.99) ; ##protsessi algus

Telefoniteenus tabel: