- •Введение
- •Техническое задание
- •1. Описание предметной области
- •1.1 Общее описание предметной области
- •1.2 Описание входных документов и сообщений
- •1.3 Описание выходных документов и сообщений
- •1.4 Описание запросов к базе данных Запрос для отчёта
- •Запрос на выборку (Из одного города и факультета)
- •Запрос на выборку (Поиск по фио)
- •Запрос на выборку (Поиск студента по дате рождения)
- •Запрос на выборку (Средний бал #1)
- •Запрос на выборку (Средний балл: БаллыЕгэ)
- •Запрос на выборку (Стипендия с надбавкой 15%)
- •2.2. Нормализованная реляционная модель
- •3. Реализация базы данных в среде целевой субд
- •3.1. Структура базы данных а) состав файлов/таблиц баз данных
- •Б) структура и ключи файлов/таблиц баз данных
- •В) схема данных
- •3.2. Реализация ограничений базы данных
- •3.3. Интерфейс пользователя
- •Заключение
- •Список использованных источников
- •Приложения а. Глоссарий
1.4 Описание запросов к базе данных Запрос для отчёта
SELECT Студенты.НомерЗачётки, Студенты.ФИО, Дисциплины.НазваниеДисциплины, Оценки.Оценки
FROM Студенты INNER JOIN (Дисциплины INNER JOIN Оценки ON Дисциплины.КодДисциплины = Оценки.КодДисциплины) ON Студенты.КодСтудента = Оценки.КодСтудента;
Рисунок 1 – Схема данных «Запрос для отчёта»
Рисунок 2 – Результат выполнения «Запрос для отчёта»
Запрос на выборку (Из одного города и факультета)
SELECT Факультеты.Наименование, Группы.НомерГруппы, Студенты.ФИО, Студенты.Город
FROM Факультеты INNER JOIN (Группы INNER JOIN Студенты ON Группы.КодГруппы = Студенты.КодГруппы) ON Факультеты.КодФакультета = Группы.КодФакультета
WHERE (((Факультеты.Наименование)=[Введите факультет]) AND ((Студенты.Город)=[Введите город]));
Рисунок 3 – Схема данных «Из одного города и факультета»
Рисунок 4 – Информационное сообщение запроса данных «Из одного города и факультета»
Рисунок 5 – Информационное сообщение запроса данных «Из одного города и факультета»
Рисунок 6 – Результат выполнения «Из одного города и факультета»
Запрос на выборку (Количество студентов в группах)
SELECT Группы.НомерГруппы, Count(Студенты.КодСтудента) AS [Количество студентов]
FROM Группы INNER JOIN Студенты ON Группы.КодГруппы = Студенты.КодГруппы
GROUP BY Группы.НомерГруппы;
Рисунок 7 – Схема данных «Количество студентов в группах»
Рисунок 8 – Результат выполнения «Количество студентов в группах»
Запрос на выборку (Максимальные баллы ЕГЭ)
SELECT TOP 5 Студенты.ФИО, Студенты.КодГруппы, Студенты.БаллыЕГЭ
FROM Студенты
ORDER BY Студенты.БаллыЕГЭ DESC;
Рисунок 9 – Результат выполнения «Максимальные баллы ЕГЭ»
Запрос на выборку (Меньше 200 баллов по ЕГЭ)
SELECT Студенты.ФИО, Студенты.БаллыЕГЭ
FROM Студенты
WHERE (((Студенты.БаллыЕГЭ)<200))
ORDER BY Студенты.БаллыЕГЭ DESC;
Рисунок 10 – Результат выполнения «Меньше 200 баллов по ЕГЭ»
Запрос на выборку (Неуспевающие студенты)
SELECT Студенты.НомерЗачётки, Студенты.ФИО, Студенты.КодГруппы, Avg(Оценки.[Оценка за экзамен]) AS [Средний балл успеваемости]
FROM Студенты INNER JOIN (Дисциплины INNER JOIN Оценки ON Дисциплины.КодДисциплины = Оценки.КодДисциплины) ON Студенты.КодСтудента = Оценки.КодСтудента
GROUP BY Студенты.НомерЗачётки, Студенты.ФИО, Студенты.КодГруппы
HAVING (((Avg([Оценки].[Оценка за экзамен]))<3));
Рисунок 11 – Схема данных «Неуспевающие студенты»
Рисунок 12 – Информационное сообщение запроса данных «Неуспевающие студенты»
Рисунок 13 – Результат выполнения «Неуспевающие студенты»
Запрос на выборку (Поиск по фио)
SELECT Студенты.НомерЗачётки, Студенты.ФИО, Студенты.ДатаРождения, Группы.НомерГруппы, Факультеты.Наименование
FROM Факультеты INNER JOIN (Группы INNER JOIN Студенты ON Группы.КодГруппы = Студенты.КодГруппы) ON Факультеты.КодФакультета = Группы.КодФакультета
WHERE (((Студенты.ФИО) Like "*" & [Введите студента] & "*"));
Рисунок 14 – Схема данных «Поиск по ФИО»
Рисунок 15 – Информационное сообщение запроса данных «Поиск по ФИО»
Рисунок 16 – Результат выполнения «Поиск по ФИО»