Основы языка TRANSACT SQL. Казакова И.А. - 124 стр.

UptoLike

Составители: 

123
Результат выполнения запроса приведен на рис. 51.
Рис. 51. Процедура без параметров
Пример 100. Процедура без параметров. Создать процедуру
для уменьшения размера стипендии на 10 %:
CREATE Procedure Reduce
AS
UPDATE Students SET Stipendiya = Stipendiya * 0.9
WHERE Stipendiya IS NOT NULL;
Для обращения к процедуре можно использовать команду:
EXECUTE Reduce;
Пример 101. Процедура с входным параметром. Разрабо-
тать процедуру для получения названий экзаменов и оценок, полу-
ченных заданным студентом:
CREATE Procedure ExamResult
@FIO varchar(70)
AS
SELECT s.FIO AS 'ФИО', l.Nazvanie AS 'Дисциплина',
p.Examen AS 'Оценка за экзамен'
FROM Students AS s INNER JOIN
Progress AS p ON p.ID_Student = s.ID_Student INNER JOIN
Lessons AS l ON l.ID_Lesson = p.ID_Lesson
WHERE s.FIO = @FIO;
Для обращения к процедуре можно использовать команды:
EXECUTE ExamResult 'Токунов А.Г.' или
ExamResult @FIO ='Токунов А.Г.';
Результат выполнения запроса приведен на рис. 52.
    Результат выполнения запроса приведен на рис. 51.




                Рис. 51. Процедура без параметров

     Пример 100. Процедура без параметров. Создать процедуру
для уменьшения размера стипендии на 10 %:
     CREATE Procedure Reduce
     AS
     UPDATE Students SET Stipendiya = Stipendiya * 0.9
      WHERE Stipendiya IS NOT NULL;
     Для обращения к процедуре можно использовать команду:
     EXECUTE Reduce;
     Пример 101. Процедура с входным параметром. Разрабо-
тать процедуру для получения названий экзаменов и оценок, полу-
ченных заданным студентом:
     CREATE Procedure ExamResult
     @FIO varchar(70)
     AS
     SELECT s.FIO AS 'ФИО', l.Nazvanie AS 'Дисциплина',
p.Examen AS 'Оценка за экзамен'
     FROM Students AS s INNER JOIN
      Progress AS p ON p.ID_Student = s.ID_Student INNER JOIN
      Lessons AS l ON l.ID_Lesson = p.ID_Lesson
     WHERE s.FIO = @FIO;
     Для обращения к процедуре можно использовать команды:
     EXECUTE ExamResult 'Токунов А.Г.' или
     ExamResult @FIO ='Токунов А.Г.';
     Результат выполнения запроса приведен на рис. 52.


                              123