Tavaline programm või funktsioon, mis käivitab mitu tegevust.
1.
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', 'Iseseisupäev', 'Eesti');
SELECT * from pidupaev;
2.– kuvab kõik mis on tablis
USE AntonIvanov
GO
CREATE PROCEDURE tabeliKuvamine
AS
BEGIN
SELECT * FROM pidupaev;
END;
DELETE from pidupaev
WHERE ID=2
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[tabeliKuvamine]
AS
BEGIN
SELECT * FROM pidupaev
ORDER BY pidu;
END;

3.–loo protseduur, mis täidab tabeli
USE AntonIvanov;
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-02-24’, ‘Iseseisvupäev’, ‘Eesti’;
EXEC lisaTabeli ‘2024-01-01’, ‘Uus aasta’, ‘Eesti’;
EXEC lisaTabeli ‘2024-04-01’, ‘Naerapäev’, ‘Eesti’;
EXEC lisaTabeli ‘2024-03-29’, ‘Suur reede’, ‘Eesti’;
EXEC lisaTabeli ‘2024-09-01’, ‘Teadmiste päev’, ‘Eesti’;
EXEC lisaTabeli ‘2024-06-24’, ‘Jaanipäev’, ‘Eesti’;
4. — kustata id järgi protsedure
USE AntonIvanov;
GO
CREATE PROCEDURE kutsutaIdjargi
@deleted int
AS
BEGIN
SELECT * FROM pidupäev;
DELETE from pidupaev
Where id=@deletedid;
SELECT * FROM pidupaev;
END;
–kutse
EXEC kustutaIdjardi @deleteid=2;
EXEC kustutaIdjardi 2;
5.– kuvame kõik peod mis algavad I tähega
USE AntonIvanov;
GO
CREATE PROCEDURE peodAlgavad
@taht char(1)
AS
BEGIN
SELECT kuupaev, pidu
FROM pidupaev
Where pidu Like @taht + ‘%’;
END;
— kutse
EXEC peodAlgavad ‘I’;
EXEC peodAlgavad @taht=’I’;

6. — kuvame kõik peod mis tõimub periiodil
USE AntonIvanov;
GO
CREATE PROCEDURE kuuPeod
@kuupaev1 date,
@kuupaev2 date
AS
BEGIN
SELECT kuupaev
FROM pidupaev
Where kuupaev BETWEEN @kuupaev1 and @kuupaev2;
END;
— kutse
EXEC kuupeod @kuupaev1=’2024-01-01′, @kuupaev2=’2024-06-01′;
