СОЗДАНИЕ ПРОЦЕДУР

(Можно изменить правой кнопкой мыши/Modify Programability/Stored procedures)

-- protsedure loomine
Use Chernykh
go
create procedure helloKool
as
begin
	select * from kool;
end;
--protseduri kustumine
use Chernykh
exec helloKool;
-- kasutaja sisestab kool esimene taht ja siis,
-- kuvatakse koik kooli aandmed
Use Chernykh
go
create procedure kooliOtsing
	@taht varchar(1)
as
begin
	select * from kool
	where koolNimi like @taht + '%'
end;

--kutse
exec kooliOtsing @taht='T'
--kusutaja sisestab ainult taabelvaarused ja  siis tabel taidetakse
use Chernykh
go 
Create procedure lisaKool
	@kNimi varchar(50),
	@aadress text,
	@telefon varchar(13),
	@reg varchar(10)
as 
begin 
	Insert into kool(koolNimi, aadress, telefon, regNumber )
	values(@kNimi, @aadress, @telefon, @reg);
	select * from kool;
end

--kutse
exec lisaKool 'AbrakadabraKool', 'Harju', '12367789', '255243569';
--kustutab uks kirje/rida id jarji
Use Chernykh
go
create procedure kustutaKool
@deleteId int
as
begin
	select * from kool
	Delete from kool
	where id=@deleteId
	select * from kool
end;
--kutse
exec kustutaKool 1
-- procedure kusib mida  on vaja teha
--kas lisada veergu // ADD voi kustutada // DROP COLUMN
CREATE PROCEDURE muudatus
@tegevus varchar(10),
@tabelinimi varchar(25),
@veerunimi varchar(25),
@tyyp varchar(25) =null
AS
BEGIN
DECLARE @sqltegevus as varchar(max)
set @sqltegevus=case 
when @tegevus='add' then concat('ALTER TABLE ', 
@tabelinimi, ' ADD ', @veerunimi, ' ', @tyyp)
when @tegevus='drop' then concat('ALTER TABLE ', 
@tabelinimi, ' DROP COLUMN ', @veerunimi)
END;
print @sqltegevus;
begin 
EXEC (@sqltegevus);
END
END;
--добавление столбца
EXEC muudatus @tegevus='add', @tabelinimi='kool', @veerunimi='test', @tyyp='int';
--удаление столбца
EXEC muudatus @tegevus='drop', @tabelinimi='kool', @veerunimi='test';
--проверка таблицы
select * from kool
--uendada opilasteArv id jargi
create procedure uendaKool
	@arv int,
	@undatudid int
as
begin 
	select * from kool;
	Update  kool set opilasteArv =@arv
	Where id = @undatudid;
	select * from kool;
end
--kutse
exec uendaKool @arv=5000, @undatudid=2