SQL Server protseduurid.

Videotund ja ülesanne.

USE protseduur_Kulakovski;
go
CREATE PROCEDURE Otsime_zanr
@osaID int
AS
BEGIN
SELECT zanrID,zanrNimi	
FROM zanr
WHERE zanrID = @osaID;
END
EXEC Otsime_zanr @osaID=4;
USE protseduur_Kulakovski;
go
CREATE PROCEDURE Otsime_zanr_tahtise
@taht char(1)
AS
BEGIN
SELECT * FROM zanr
WHERE zanrNimi LIKE @taht + '%';
END
EXEC Otsime_zanr_tahtise @taht= 'K';
USE protseduur_Kulakovski;
go
CREATE PROCEDURE Kustutamine_zanr
@deleteID int
AS
BEGIN
SELECT * FROM zanr;
DELETE FROM zanr 
WHERE zanrID=@deleteID;
SELECT * FROM zanr;
END
EXEC Kustutamine_zanr @deleteID= 2;
USE protseduur_Kulakovski;
go
CREATE PROCEDURE Otsime_zanr_2
@taht char(1)
AS
BEGIN
SELECT zanrNimi 
FROM zanr
WHERE zanrNimi LIKE '%' + @taht + '%';
END
EXEC Otsime_zanr_2 @taht='a';
USE protseduur_Kulakovski;
go
CREATE PROCEDURE count_zanr
AS
BEGIN
SELECT count(zanrID) as kogus
FROM zanr;
END
EXEC count_zanr;
CREATE TABLE filmType(
filmTypeID int PRIMARY KEY identity(1,1),
filmType varchar(20) NOT NULL)
INSERT INTO filmType(filmType)
VALUES ('4D')
SELECT * FROM filmType;
USE protseduur_Kulakovski;
go
CREATE PROCEDURE kallis_odav_film
AS
BEGIN
SELECT filmType,
IIF (filmType LIKE '4D', 'kallis film', 'odav film') AS filmT
FROM filmType;
END
EXEC kallis_odav_film;
CREATE TABLE film(
filmID int PRIMARY KEY identity(1,1),
pikkus int)
INSERT INTO film(pikkus)
VALUES (118)
SELECT * FROM film;
USE protseduur_Kulakovski;
go
CREATE PROCEDURE filmi_pikkus
@omafilmID int
AS
BEGIN
SELECT * FROM film;
UPDATE film SET pikkus=pikkus*1.1
WHERE filmID=@omafilmID;
SELECT * FROM film;
END
EXEC filmi_pikkus @omafilmID=3;
CREATE TABLE keel(
keelID int PRIMARY KEY identity(1,1),
keelNimi varchar(40),
keelNimiVene varchar(40),
keelNimiInglise varchar(40))
INSERT INTO keel(keelNimi, keelNimiVene, keelNimiInglise)
VALUES ('Prantsuse','Французский','French')
SELECT * FROM keel;
USE protseduur_Kulakovski;
go
CREATE PROCEDURE DROP_COLUMN_keelNimiVene
AS
BEGIN
SELECT * FROM keel;
ALTER TABLE keel DROP COLUMN keelNimiVene;
SELECT * FROM keel;
END
EXEC DROP_COLUMN_keelNimiVene;

et