tavaline programm või funktsioon, mis käivitab mitu tegevust
CREATE TABLE pidupaev(
id int primary key identity(1,1),
kuupaev date,
pidu varchar(50),
riik varchar(50));
INSERT INTO pidupaev(kuupaev, pidu, riik)
VALUES ('2024-02-24', 'Iseseisvuspäev', 'Eesti')
Select * from pidupaev;

--kuvab kõik mis on babelis
USE DavidTARpv23;
GO
Create procedure tabeliKuvamine
AS
BEGIN
SELECT * FROM pidupaev;
END;
--kutse
EXEC tabelikuvamine;

--loo protseduur, mis täidab tabeli
USE DavidTARpv23;
GO
Create procedure lisaTabeli
@kuupaev date,
@pidu varchar(50),
@riik varchar(50)
AS
BEGIN
INSERT INTO pidupaev(kuupaev, pidu, riik)
VALUES (@kuupaev, @pidu, @riik)
SELECT * FROM pidupaev;
END;
--kutse
EXEC lisaTabeli '2024-01-01', 'Uus aasta', 'Eesti'
EXEC lisaTabeli '2024-03-29', 'Suur reede', 'Eesti'
EXEC lisaTabeli '2024-07-05', 'Kevadpüha', 'Eesti'
EXEC lisaTabeli '2024-05-12', 'Võidupüha', 'Eesti'
EXEC lisaTabeli '2024-12-31', 'Jõululaupäev', 'Eesti'
EXEC lisaTabeli '2024-08-04', 'Teine jõulupüha', 'Eesti'
EXEC lisaTabeli '2024-09-06', 'Iseseisvuspäev, Eesti Vabariigi aastapäev', 'Eesti'
EXEC lisaTabeli '2024-03-29', 'Jaanipäev', 'Eesti'
EXEC lisaTabeli '2024-08-03', 'Taasiseseisvumispäev', 'Eesti'

--kustuta id järgi
USE DavidTARpv23;
GO
Create procedure kustutaIdjargi
@deleteid int
AS
BEGIN
SELECT * FROM pidupaev;
DELETE FROM pidupaev
WHERE id=@deleteid;
SELECT * FROM pidupaev;
END;
--kutse
EXEC kustutaidjargi 2;

--kuuvame kõik peod mis algavad A tähega
USE DavidTARpv23;
GO
Create procedure peodAlgavad
@taht char(1)
AS
BEGIN
SELECT kuupaev, pidu
FROM pidupaev
Where pidu like @taht + '%';
END;
--kutse
EXEC peodAlgavad 'I';

--kuvame kõik peod mis algavad A tähaga
USE DavidTARpv23;
GO
Create procedure kuuPeod
@kuupaev1 date,
@kuupaev2 date
AS
BEGIN
SELECT kuupaev, pidu
FROM pidupaev
where kuupaev BETWEEN @kuupaev1 AND @kuupaev2;
END;
--kutse
EXEC kuuPeod '2024-08-03', '2024-08-04' ;
