nagu funksioonid programmerimise keeles
salvestatud protseduurid (Store procedure)
tegevused, mis saab automaatselt teha(INSERT INTO, ALTER TABLE, SELECT, DETELE, UPDATE)
CREATE TABLE linnad(
linnID int PRIMARY KEY identity(1,1),
linnNimi varchar(30) unique,
elanikeArv int not null,
maakond varchar(25)
);
-- protseduur mis uuendab tabeli ja suurendab elanike arv 10%
CREATE Procedure uuendaLinn
@arv decimal(5,2)
AS
BEGIN
SELECT * FROM linnad;
UPDATE linnad SET elanikeArv=elanikeArv*@arv;
SELECT * FROM linnad;
END
--kutse
EXEC uuendaLinn 0.01;
UPDATE linnad SET elanikeArv=100000 WHERE linnID=2;
DROP Procedure uuendaLinn;

-- protseduur, mis kustutab tabelist id järgi
CREATE PROCEDURE kustutaLinn
@id int
AS
BEGIN
SELECT * FROM linnad;
DELETE FROM linnad WHERE linnID=@id;
SELECT * FROM linnad;
END
--kutse
EXEC kustutaLinn 3;
EXEC kustutaLinn @id=3;

-- Protsesduur, mis lisab (INSERT) tabelisse andmed ja kohe näitab (SELECT) tabeli
CREATE PROCEDURE lisaLinn
@linnNimi varchar(30),
@elanikeArv int,
@maakond varchar(25)
AS
BEGIN
INSERT INTO linnad(linnNimi, elanikeArv, maakond)
VALUES (@linnNimi, @elanikeArv, @maakond);
SELECT * FROM linnad;
END;
--kutse
EXEC lisaLinn 'Keila' , 1000, 'Harju';
--protseduuri kustutamine
DROP Procedure lisaLinn;










0 Comments