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

UptoLike

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

113
предварительно объединенные поисковые и базовые табли-
цы обеспечивают наилучшие условия для транзакций, позволяют
использовать компактные схемы кодов, устраняя необходимость
написания для каждого отчета длинных объединяющих процедур;
предварительно объединенные и проверенные представле-
ния уменьшают вероятность ошибок, связанных с неполным выпол-
нением условий объединения.
Пример 97. Вывести фамилии, названия сданных предметов и
оценки для каждого студента:
CREATE VIEW ocenki AS
SELECT l.Nazvanie AS Название_предмета,
s.FIO AS Фамилия_студента, p.Examen AS "оценка за эк-
замен"
FROM students s, Progress p, Lessons l
WHERE s.ID_Student = p.ID_Student
AND p.ID_Lesson = l.ID_Lesson;
Результат выполнения запроса приведен на рис. 49.
Рис. 49. Представление, основанное на нескольких таблицах
Теперь все названия предметов, сданных студентом, или фа-
милии студентов, сдававших какойибо предмет, можно выбрать с
помощью простого запроса. Например, чтобы увидеть все предме-
ты, сданные студентом Иванчуковым А. Г, создается запрос:
SELECT Название_предмета,ценка за экзамен"
FROM ocenki
WHERE Фамилия_студента = ванчуков А.Г.';
      предварительно объединенные поисковые и базовые табли-
цы обеспечивают наилучшие условия для транзакций, позволяют
использовать компактные схемы кодов, устраняя необходимость
написания для каждого отчета длинных объединяющих процедур;
      предварительно объединенные и проверенные представле-
ния уменьшают вероятность ошибок, связанных с неполным выпол-
нением условий объединения.
     Пример 97. Вывести фамилии, названия сданных предметов и
оценки для каждого студента:
     CREATE VIEW ocenki AS
     SELECT l.Nazvanie AS Название_предмета,
     s.FIO AS Фамилия_студента, p.Examen AS "оценка за эк-
замен"
     FROM students s, Progress p, Lessons l
     WHERE s.ID_Student = p.ID_Student
     AND p.ID_Lesson = l.ID_Lesson;
     Результат выполнения запроса приведен на рис. 49.




     Рис. 49. Представление, основанное на нескольких таблицах

      Теперь все названия предметов, сданных студентом, или фа-
милии студентов, сдававших какой-либо предмет, можно выбрать с
помощью простого запроса. Например, чтобы увидеть все предме-
ты, сданные студентом Иванчуковым А. Г, создается запрос:
      SELECT Название_предмета, "оценка за экзамен"
      FROM ocenki
      WHERE Фамилия_студента = 'Иванчуков А.Г.';


                               113