Salvestatud protseduurid / SQL Server

Tavaline programm või funktsioon, mis käivitab mitu tegevust

CREATE TABLE pidupäev(
id int primary key identity(1,1),
kuupäev date,
pidu varchar(50),
riik varchar(50));
insert into pidupäev(kuupäev, pidu, riik)
VALUES ('2024-02-24','Iseseisvuspäev','Eesti');
Select * from pidupäev

Kuvab kõik mis on tabelis

USE TARpv23_Ostapjuk;
GO
CREATE PROCEDURE tabeliKuvamine
AS
BEGIN
	SELECT * FROM pidupäev;
END;

Kutse

EXEC tabeliKuvamine;

Loo protseduur, mis täida tabeli

USE TARpv23_Ostapjuk;
GO
CREATE PROCEDURE lisaTabeli
	@kuupäev date,
	@pidu varchar(50),
	@riik varchar(50)
AS
BEGIN
	INSERT INTO pidupäev(kuupäev, pidu, riik)
	VALUES (@kuupäev, @pidu, @riik);
	SELECT * FROM pidupäev;
END;
--kutse
EXEC lisaTabeli '2024-05-12', 'Emadepäev', 'Eesti'

Kustuta id järgi

USE TARpv23_Ostapjuk;
GO
CREATE PROCEDURE kustutaIdjargi
	@deleteid int
AS
BEGIN
	SELECT * FROM pidupäev;
	DELETE FROM pidupäev
	WHERE id=@deleteid;
	SELECT * FROM pidupäev;
END;
--kutse
EXEC kustutaIdjargi 2;
EXEC kustutaIdjargi @deleteid=2;

Kuvame kõik peod mis algavad S tähega

USE TARpv23_Ostapjuk;
GO
CREATE PROCEDURE peodAlgavad
	@taht char(1)
AS
BEGIN
	SELECT kuupäev,pidu FROM pidupäev
	where pidu like @taht + '%';
END;
--kutse
EXEC peodAlgavad 'S';

Kuvame kõik peod mis on ühe kuu jooksul

USE TARpv23_Ostapjuk;
GO
CREATE PROCEDURE  kuuPeod
	@kuupäev1 date,
	@kuupäev2 date
AS
BEGIN
	SELECT kuupäev,pidu FROM pidupäev
	where kuupäev between @kuupäev1 and @kuupäev2
END;
-- kutse
EXEC kuuPeod '2024-06-01','2024-06-30'