Лабораторная
работа 1.
Название: Проектирование распределённых баз данных
Задание Построить структуру данных Автоматизированной системы "Деканат"
Даны
Нужно сделать
Результат представить в виде файла в формате Word (см.пример описания)
Названия базовых таблиц и
основных полей из них не менять !
1. Группы
Атрибуты
сущности “группы”
Пример
GRUPS
N_grupa |
C_grupa |
C_fakultet |
C_cpez |
N_men |
C_budget |
N_kurs |
1 |
М-101 |
Математический |
|
20 |
Бюджетная |
1 |
2 |
М-102 |
------ |
|
20 |
Платная |
1 |
3 |
ПМ-401 |
------- |
Оптимизация |
14 |
Бюджетная |
|
Обратить внимание
2. Студенты
Атрибуты
сущности “студенты”
Пример
STUDS
N_stud |
N_grupa |
C_FIO_STUD |
C_ADR_STUD |
C_tel_stud |
|
1 |
1 |
Иванов И.И, |
Солнечная 25-55 |
41-42-43 |
|
2 |
1 |
Петров В.В. |
Ленина 560 – 56 |
81-83-56 |
|
3 |
3 |
Сидоров С,С. |
Общежитие |
---- |
|
3. Кафедры
KAFEDR
N_kaf |
C_fakultet |
C_kaf |
N_kol |
C_sav |
N_kol_kurs |
1 |
Математический |
Мат. Анализ |
12 |
Свиридюк |
40 |
2 |
Математический |
Алгебра |
14 |
Матвеев |
36 |
4. Преподаватели
PREPS
N_prep |
N_kaf |
C_fio_prep |
C_adr_prep |
C_tel_prep |
1 |
1 |
Воронин |
Гагарина 10-20 |
--- |
2 |
1 |
Ушаков |
Гагарина 10-21 |
55-55-01 |
Обратить внимание
Доцент
Профессор
Ст. преподаватель
Преподаватель-стажер
Каждый преподаватель ведет закрепленные за ним курсы(лекции) в определенных группах
5. Курсы
KURS
N_lekz |
C_lekz |
N_time |
C_priznak |
C_sachet |
N_KURS |
1 |
Мат. Анализ |
72 |
Лекция |
Экзамен |
1 |
2 |
Мат. Анализ |
144 |
Практика |
Зачет |
2 |
|
|
|
|
|
|
Обратить внимание
6. Отношение курсов,
преподавателей и групп
В каких группах какие курсы читаются(ведутся) и кем
KURS_GRUP
N_lekz |
N_grupa |
N_prep |
1 |
1 |
1 |
1 |
2 |
1 |
2 |
1 |
1 |
2 |
2 |
2 |
Пример
Воронин. Кафедра Мат. Анализ. Ведет курс "Мат.Анализ. Лекции" в группах ММ-101,102,103 и МП 101,102
Также он ведет курс "Функциональный анализ.Практика" в группе ММ-301
7.
Успеваемость студентов
KURS_STUD
N_STUD |
N_lekz |
N_otmetka |
1 |
1 |
4 |
1 |
2 |
4 |
1 |
3 |
|
2 |
1 |
|
2 |
2 |
3 |
2 |
3 |
5 |
1. Экзаменационная
ведомость
Сразу будет приводится экранная форма, соответствующая печатному документу
группа дискретная Алгебра. Преподаватель :Алеев. Р.Ж |
|||||
Иванов Петров …….. Сидоров |
Удол.
Не явился |
|
|
||
|
|
|
|
||
Для ввода данных используются следующие справочники :
Список групп
Список предметов и распределение предметов.
Справочник оценок.
Примерный вид экрана
Выберите группу Выберите студента Солнечная, 20-30, 41-56-78 , На платной основе : Список предметов |
|||||
Алгебра. Лекции Мат.Анализ. Лекции
…….. |
1 курс Алеев Р.Ж. Воронин
|
Зачет
|
|
||
Мат.Анализ. Практика
|
2 курс Ушаков
|
Отлично
|
|
||
И т.д. до 5 -го курса
Дипломная работа |
Сидорчук. Влияние лунного света на рост телеграфных столбов |
Хорошо. |
|
||
|
|
|
|
||
Возможность изменить отметку за любой курс(пересдача).
Предусмотреть ввод информации о дипломной работе( создать нужные поля)
Кафедра Зав. кафедрой Матвеев.
Название курс Группы кол-во Часов |
||||
Алгебра. Лекции. Топология …….. Логика |
1 2
5 |
MM-101 MM-102 MM-103 ПМ-101 ПМ-102 MM-201
ПМ-503 |
72 36
36 |
Экз. Зачет
Зачет |
Всего |
|
23 группы 250 человек |
7000 часов |
Зачетов в 12 группах (120 человек)
Экзаменов в 11 группах (130 человек)
Пример описания
таблиц Студенты и Группы
Обозначения
* Первичный ключ
#(Таблица) Внешний ключ
Название
таблицы Studs
Аттрибуты таблицы
Внимание ! Придерживаться названий таблиц и полей из описания ! Все дальнейшие лабораторные работы будут ссылаться именно
на эти названия.
Поле |
Семантика |
Тип |
длина |
Пример |
Ключ |
N_STUD |
Уникальный номер студента |
Numeric |
8 |
12 |
* |
N_GRUPA |
Номер группы |
Numeric |
8 |
3 |
#(GRUPS) |
C_FIO_STUD |
ФИО |
Character |
100 |
Иванов |
|
C_ADR_STUD |
Адрес студента |
Character |
200 |
Ворошилова 10-24 |
|
C_TEL_STUD |
Телефон студента |
Character |
8 |
31-32-33 |
|
Название
таблицы Grups
Аттрибуты таблицы
Поле |
Семантика |
Тип |
Длина |
Пример |
Ключ |
N_GRUPA |
Уникальный номер группы |
Numeric |
8 |
3 |
* |
С_GRUPA |
Символьный номер группы |
Character |
8 |
ММ-103 |
|
N_KURS |
Номер курса(1-5) |
Numeric |
1 |
1 |
|
С_BUDGET |
Бюджетная или платная |
Character |
7 |
Бюджет |
|
|
Лабораторная
работа 2.
Название: Создание таблиц в Access.
Задание 1.
Указания к
выполнению
1. Для
создания таблиц в Access нужно перейти на закладку Таблицы
и нажать Кнопку Создать
После выбрать
пункт Конструктор.
2.
Ключевые поля (первичные ключи) рекомендуется создавать с типом Счетчик
3. Каждый человек заполняет по
В итоге все таблицы должны быть заполнены одной или несколькими записями.
Задание 2.
Составить схему данных.
Определить типы отношений между таблицами и задать целостность данных (каскадное обновление и удаление)
Указания к выполнению
1. Для создания схемы данных в Access нажмите кнопку Схема данных.
Добавьте все таблицы в схему.
Определите все связи(отношения) между таблицами.
Для определения отношения надо указать какое ключевое поле одной таблицы соответствует внешнему ключу другой таблицы.
Для этого выделите первичный ключ талицы и "тащите" его на соответствующий внешний ключ другой таблицы.
Определите типы отношений (один-ко-многим или один-один) и задайте целостность данных.
Готовую схему покажите преподавателю.
Лабораторная
работа 3.
Название: Создание простых форм мастером форм.
Задание.
С помощью
мастера форм создать простые формы для ввода данных в нашу базу.
Указание к выполнению.
Каждая форма использует одну
таблицу в качестве источника данных.
Пример приведен
для таблиц Grups и Studs
Связь форм Grups
и Studs (ввод студентов в выбранную группу)
2. Расширьте
поле Примечание формы
3.Выберите инструмен Кнопка на панели инструментов
4. Вставьте
кнопку в поле Примечание формы.
5.В окне
создание кнопок выберите пункт Работа с
формой Открытие формы
7.В следующем
окне выбрать пункт "Открыть форму
для отобранных записей"
8.В следующем
окне указать соответствующие поля N_grups <-> N_grups
9.. Задать остальные параметры кнопки.
10. Сохранить форму и проверить ее работу.
Обратите
внимание, что номер группы(вторичный ключ) в форме для
студентов необходимо вводить вручную. Это можно исправить.
1. Зайдите в форму для студентов конструктором
2. Выберите поле N_Grupa в области данных.
3. Нажмите правую кнопку мыши и выберите пункт свойста.
4. Перейдите на закладку Данные в списке свойств
5. В
строке Значение по умолчанию Введите следующую
строку параметров
=[Forms]![grups]![N_grupa]
[grups] - имя формы для ввода групп
[N_grupa] - имя поля, содержащее номер текущей группы в форме grups
6. Закройте обе формы, и проверьте их работу, вводя новые группы и студентов в них.
Лабораторная работа 4.
Название: Создание простых форм мастером форм.
Задание.
С помощью мастера форм создать сложные формы для ввода данных об успеваемости студентов и распределении предметов по преподавателям
Форма успеваемости студентов
Форма распределения предметов по преподавателям.
Указание к выполнению.
Каждая форма будет использовать несколько таблиц
Рассмотрим сложную форму на примере успеваемости студентов.
Техника заполнения успеваемости будет следующая
Выбор группы
Выбор студента этой группы
Проставление ему отметок об успеваемости по всем курсам
Сделаем форму для заполнения успеваемости отдельного студента
Примерный вид формы.
ШАГ 1.
С помощью мастера Автоформа:В столбец сделайте форму для работы с одним студентом.
В качестве источника данных укажите таблицу studs
Зайдите в нее конструктором.
Расширьте область данных.
С помощью инструмента "подчиненная форма" на панели инструментов создайте подчиненную форму на основе таблицы stud_kurs
Внимательно читайте все сообщения, которые будет выводить мастер построения и выбирайте нужные опции для подчиненной формы.
В итоге получим нарисованную выше форму, только вместо поля названия курса у нее пока будет номер курса.
ШАГ 2.
1. Закройте вашу новую форму и сохраните ее под любым именем.
2. Зайдите в форму Подчиненная форма Stud_kurs с помощью конструктора.
3. Выделите поле N_lekz и удалите его.
4. На место этого поля с помощью инструмента "Поле со списком" на панели инструментов вставь те новое поле.
5. Внимательно выполняйте все инструкции мастера по созданию поля со списком.
Закройте форму.
Запустите основную форму и проставьте имеющимся студентам оценки по имеющимся курсам.
ШАГ 3.
Наша форма Grups нужна для выбора группы.
Добавьте новую кнопку и свяжите ее с вашей новой формой. (Внимание! С основной формой, а не подчиненной !)
Аналогично сделайте форму распределения предметов по преподавателям
Выбираем кафедру.
Выбираем преподавателя.
Назначаем ему курсы.
Назначаем ему группы
Лабораторная работа 5.
Название: Язык структурированных запросов (SQL)
Простые запросы
Перейти к закладке "Запросы" и нажать кнопку "Создать".
Ввести текст запроса, для выполнения запроса закрыть окно, сохранить запрос и нажать кнопку "Открыть".
Печать всей таблицы
Список всех групп
SELECT *
FROM grups
Печать с сортировкой по одному полю
Печать списка предметов с сортировкой по названию
SELECT С_lekz, C_priznak
FROM kurs ORDER BY c_lekz
Выборка из одной таблицы с условием
Список студентов группы номер 2
SELECT c_fio_stud
FROM studs
WHERE n_grupa=2
Выборка по шаблону
Список предметов, имеющих в названии слово "Анализ"
SELECT *
FROM kurs
WHERE c_lekz LIKE
"*АНАЛИЗ*"
Контрольное задание
Напечатать список групп, где количество студентов больше 15 со 2 курса.
Найти всех студентов с фамилией Иванов и телефоном на 41.
Запросы с соединением
Таблицы соединяются по полю, имеющими одинаковую семантику, по одинаковому значению. Обычно соединяемые таблицы находятся в связи один-ко-многим.
Простое соединение
Напечатать список студентов платных групп
SELECT grups.c_grupa, grups.c_budget, studs.c_fio_stud
FROM grups, studs
WHERE grups.n_grupa=studs.n_grupa
AND grups.c_budget='Платная'
Соединение с условием отбора
Список преподавателей кафедры алгебры
SELECT kafedr.c_kaf, preps.c_fio_prep, c_tel_prep
FROM kafedr, preps
WHERE kafedr.n_kaf=preps.n_kaft
AND kafedr.c_kaf='Алгеба'
Контрольные задания.
1. Получить список студентов 2-го курса бюджетных групп, живущих на ЧМЗ (по телефону определить - на 21, 24, 22 начинаются ).
2. Для каждого зав. Кафедрой определить его ученую степень.
4. Соединение 3-х и более таблиц
Соединение это обычно выполняется над таблицами со связью многие-ко-многим, или когда в условии отбора данных из двух связанных таблиц присутствуют данные из 3-ей таблицы.
Связь многие-ко-многим
Таблица KURS_STUD ( Один студент - много предметов, один предмет - много студентов)
Список всех студентов с отметками за Мат. анализ
SELECT studs.c_fio_stud,
kurs.c_lekz, kurs.c_priznak,
kurs.c_sachet, kurs_stud.n_otmetka
FROM studs, kurs, kurs_stud
WHERE studs.n_stud=kurs_stud.n_stud
AND kurs_stud.n_lekz=kurs.n_lekz
AND kurs.c_lekz='Мат.Анализ'
Дополнительная связь
Список всех студентов группы М-101 с отметками за все предметы
SELECT grups.c_grupa, studs.c_fio_stud, kurs.c_lekz, kurs.c_priznak, kurs.c_sachet, kurs_stud.n_otmetka
FROM studs, kurs, kurs_stud, grups
WHERE studs.n_stud=kurs_stud.n_stud
AND kurs_stud.n_lekz=kurs.n_lekz
AND studs.n_grupa=grups.n_grupa
AND grups.c_grupa='M-101'
ORDER BY kurs.c_lekz
Контрольные задания
Получить список студентов 2-го курса бюджетных групп, у которых есть задолженности по предметам(список).
Распечатать список предметов и групп, которые ведет преподаватель Воронин.(Или другой, какой есть в базе)
Получить список задолжников каждого преподавателя.
Подзапросы.
Подзапросы с подмножеством
Получить список студентов - задолжников
SELECT *
FROM studs
WHERE n_stud IN
( SELECT n_stud
FROM kurs_stud
WHERE n_otmetka=2 OR EMPTY(n_otmetka ) )
В нижнем запросе (который собственно и называется подзапросом), строится виртуальная таблица (подмножество), включающая в себя всех задолжников. В верхнем запросе каждая запись анализируется на принадлежность к этому подмножеству и соответственно печатаются поля записи, входящей в это подмножество.
Подзапросы с EXISTS и NOT EXISTS
EXISTS означает примерно "если подмножество не пусто", соотвественно NOT EXISTS означает "если подмножество пусто". Используются в подзапросах.
Найти всех преподавателей, которые не ведут ни одного предмета
SELECT *
FROM preps
WHERE NOT EXISTS
(SELECT *
FROM kurs_grup
WHERE preps.n_prep = kurs_grup.n_prep
)
Haйти всех студентов из группы М-101, у которых есть хоть одна 3-ка.
SELECT *
FROM studs
WHERE n_grupa IN
( SELECT n_grupa
FROM grups WHERE c_grupa='M-101'
)
AND EXISTS
(SELECT *
FROM kurs_stud
WHERE studs.n_stud=kurs_stud.n_stud
AND n_otmetka = 3 )
3.Контрольные задания.
Получить список студентов с указанием группы, у которых нет отметок. ( Нет записей в таблице KURS_STUD)
Получить список предметов, которые неизвестно кто ведет.
Функции.
Count()
Функция COUNT() - подсчет числа записей, удовлетворяющих условию запроса.
Сколько всего студентов 1-го курсав базе
SELECT "количество
студентов = ", COUNT(*)
FROM studs, grups
WHERE studs.n_grupa=grups.n_grupa
AND grups.n_kurs=1
SUM()
Функция SUM() - суммирование по числовому полю
Посчитать количество часов практических занятий у преподавателя 1
SELECT SUM(kurs.N_Time)
FROM kurs, kurs_grup
WHERE kurs.n_lekz = kurs_grup.n_lekz
AND kurs.c_priznak='Практика'
AND kurs_grup.n_prep=1
Сначала в таблице KURS_GRUP отбираем все предметы и группы препод.1, затем из них отбираем практики и суммируем все часы этих предметов.
MAX()
Функция MAX() - поиск максимального элемента в подмножестве.
Поиск максимального номера студента
SELECT MAX(n_stud)
FROM studs
Аналогично функции MAX работает функция MIN.
Контрольные задания.
1. Посчитать количество пятерок у студентов группы М-101
2. Посчитать количество курсов кафедры алгебры.
3. Посчитать количество часов по всем курсам кафедры Мат. Анализ.
4. Посчитать, сколько зачетов должны сдать студенты группы М-101.
Группировка данных
Данные в одной таблице группируются по какому-то полю, значение которого не уникально, обычно являющегося вторичным ключем.
Найти, сколько студентов в каждой группе
SELECT n_grupa, COUNT(*)
FROM studs
GROUP BY n_grupa
Группировка идет по полю n_grupa - все данные с одинаковым значением этого поля группируются и подсчитывается число записей в каждой такой группе.
Группировать можно и данные из разных таблиц.
Количество часов по лекциям и практикам отдельно на каждой кафедре
SELECT preps.n_kaf, kurs.c_priznak, SUM(kurs.n_time)
FROM preps, kurs, kurs_grup
WHERE preps.n_prep=kurs_grup.n_prep
AND kurs.n_lekz=kurs_grup.n_lekz
GROUP BY preps.n_kaf,
kurs.c_priznak
Отбор групп.
Выбирать можно не только записи, но и группы.
Напечатать список групп, в которых количество пятерок у студентов больше 10 на группу.
SELECT grups.c_grupa,
'кол-во пятерок ',COUNT(*)
FROM grups, studs, kurs_stud
WHERE grups.n_grupa=studs.n_grupa
AND studs.n_stud=kurs_stud.n_stud
AND kurs_stud.n_otmetka=5
GROUP BY grups.c_grupa
HAVING COUNT(*) >
10
Контрольные задания.
Посчитать количество студентов каждого преподавателя.
Посчитать, сколько зачетов и экзаменов должен принять каждый преподаватель.
Найти студентов, которые не сдали 2 и более предметов.
Найти группу с наиболее большим количеством задолжников..
Вставка записей в таблицу.
Прямое занесение данных
"вручную" в таблицу кафедр с вычислением уникального ключа
INSERT (n_kaf, c_kaf, N_kol, c_sav,
n_kol_kurs)
INTO kafedr
VALUES ( 5, "Мет.Оптимизации", 0, 'Не знаю', 30)
Самостоятельно занесите еще несколько записей.
Вставка записей из другой таблицы.
То же с вычислением уникального ключа
INSERT INTO kafedr(n_kaf,
c_kaf, N_kol, c_sav, n_kol_kurs)
SELECT max(n_kaf),'Следующая кафедра',0, 'Не знаю', 0
FROM kafedr
Мат. Анализ читается у всех групп 1 курса мат. Факультета. У всех ведет Воронин.
Внести соответствующие записи в таблицу KURS_GRUP
INSERT INTO kurs_grup(n_lekz,
n_grupa, n_prep)
SELECT kurs.n_lekz, grups.n_grupa, 1
FROM kurs, grups
WHERE kurs.n_lekz='Мат.анализ'
AND grups.n_kurs=1
Контрольные задания.
Вставить в таблицу KURS_STUD всех студентов 1-го курса и все предметы, которые у них ведутся из таблицы KURS_GRUP. Отметки расставить случайным образом.
Обновление таблиц.
Прямое обновление.
Студента Иванова перевести из группы М-101 в группу М-102
UPDATE studs
SET n_grupa = 2
WHERE c_fio_stud =
"ИВАНОВ"
AND n_grupa=1
Обновление с подзапросом.
Программа расчета количества студентов в каждой группе
UPDATE grups
SET n_men =
( SELECT count(*)
FROM studs
WHERE studs.n_grupa=grups.n_grupa )
Контрольные задания.
Расчитать количество преподавателей и количество курсов в таблице KAFEDR согласно реальным значениям.
Удаление данных.
Идеология аналогична обновлению.
Простое удаление
Удалить кафедру "Мет.оптимизации"
DELETE
FROM kafedr
WHERE c_kaf='Мет.Оптимизации'
Удаление с подзапросом.
Удалить преподавателей, которые не относятся ни к какой кафедре
DELETE
FROM preps
WHERE N_kaf NOT
EXISTS
( SELECT N_kaf
FROM kafedr
WHERE kafedr.n_kaf=preps.n_kaf )
Контрольные задания
Удалить группы и студентов 5-го курса.
Удалить все другие ссылки на студентов и группы 5-го курса (которых теперь нет) из таблиц KURS_GRUP, KURS_STUD.
Перевести остальных студентов на курс выше. (перименовать группу и курс) funcltions for Access:
s = str(n) example: "12"=str(12)
n = val(s) example
12=val("12")
s = left(s,kol)
example "MM-" = left("MM-103",3)
s = right(s,kol) example "103" =
right("MM-103",3)
Добавить новые группы 1-го курса и новых студентов.
Лабораторная работа 6
Название: Отчеты.
Указания к выполнению.
Перейдите на закладку Отчеты
Нажмите кнопку Создать и выберите пункт Мастер Отчетов
Укажите в качестве источника данных таблицу Grups
Последовательно задавайте все опции для вашего отчета.
Просмотрите получившийся отчет.
Нажмите кнопку Конструктор.
Вы увидите окно разработки отчета.
Рассмотрим его подробно.
Окно поделено на несколько частей
Заголовок Отчета
Здесь указывается название отчета, например
“Объемы потребления в товарном и денежном выражении”
Заголовок отчета на каждой странице не указывается, только на первой.
Верхний колонтитул
Здесь указывается названия колонок отчета, которые будут печататься на каждой странице.
Например
Группа
Фамилия студента
Инициалы
Адрес
Область данных.
Здесь указываются поля из файла данных, которые будут напечатаны в отчете. Они должны быть в точности под своими заголовками и той-же длины.
Нижний колонтитул
Это то, что будет напечатано на каждом листе в конце страницы. Обычно это номер страницы, дата, фамилия исполнителя.
Например
Now() // Функция, получающая сегодн. Дату
Если нужны итоги на каждой странице, то итоговые поля нужно поместить сюда.
Примечание отчета.
Здесь итоги по всем страницам, печатаются только на последней странице.
Сложные отчеты, в которых используются данные из разных таблиц, делаются на основе запросов.
Самостоятельное задание.
Сделайте список студентов – задолжников из всех групп. Сгруппируйте по группе. В качестве источника данных возьмите соответствующий запрос из лабораторной работы 5.
Лабораторная работа 7
Название: Макросы.
Макросом называют набор из одной или более макрокоманд, выполняющих определенные операции, такие как открытие форм или печать отчетов. Макросы могут быть полезны для автоматизации часто выполняемых задач. Например, при нажатии пользователем кнопки можно запустить макрос, который
Выполнит некоторый запрос и сформирует таблицу с итогами
Выведет итоги на экран
Распечатает отчет с итогами
Создадим макрос, запускающий главную форму
Перейдите на закладку Макросы.
Нажмите кнопку создать.
В списке макрокоманд выберите Открыть форму.
Внизу укажите имя вашей Основной кнопочной формы.
Закройте макрос и сохраните его под именем
Autoexec
Для проверки работы макроса выйдите из Access (полностью) и снова зайдите.
Автоматически должна запустится основная форма.
Список
индивидуальных заданий для зачета
1.
Сделать отчет Нагрузка
на кафедру
Для всех кафедр из вашей базы
Пример
Кафедра : Мат.анализа
Дисциплина |
Группа |
Часов |
Преп. |
Контроль |
Мат. Анализ |
ММ-101 |
72 |
Ушаков |
Экзамен |
|
ММ-102 |
72 |
Ушаков |
Экзамен |
|
ММ-201 |
36 |
Соловьев |
Экзамен |
|
…… |
|
|
|
Функ.анализ |
ММ-301 |
36 |
Соловьев |
Зачет |
|
ММ-302 |
36 |
Гейт |
Зачет |
|
……. |
|
|
|
Всего |
|
1200 часов |
|
|
Кафедра : Алгебра
Дисциплина |
Группа |
Часов |
Преп. |
Контроль |
2.
Сделать отчет Приложение
к диплому
для всех студентов 5-го курса
Пример см. в Лаб. N 1
для всех преподавателей вашей базы
Преподаватель |
Группа |
Часов |
Дисциплина |
Контроль |
Ушаков |
ММ-101 |
72 |
Мат.Анализ |
Экзамен |
|
ММ-102 |
72 |
Мат.Анализ |
Экзамен |
Всего |
|
1200 ч |
|
|
Соловьев |
ММ-301 |
36 |
Функ.Анализ |
Зачет |
|
ММ-201 |
36 |
Теория вероятн. |
Зачет |
|
……. |
|
|
|
Всего |
|
1000 ч. |
|
|
4. Сделать форму Поддержка списка студентов .
Примерный вид экрана
Сначала выбрать группу.
Создать справочник видов финансирования и вводить соответствующее поле из выпадающего списка
При удалении студента удалять всю связанную с ним информацию( отметки)
5. Сделать форму Поддержка списка преподавателей
Создать справочник должностей (степеней), и вводить соответствующее поле из справочника
Кафедра выбирается из таблицы кафедр.
При удалении преподавателя удаляется вся связанная с ним информация (предметы которые он ведет)
6. Сделать отчет Заготовка для расписания сл. Вида
Факультет Математический
Курс |
Группа |
Дисциплина |
Преподаватель |
Аудитория |
|
1 |
ММ-101 |
Алгебра |
Алеев Р.Ж |
|
|
|
|
Геометрия |
Фоминых |
|
|
|
………. |
|
|
|
|
|
ММ-102 |
Алгебра |
Фоминых |
|
|
|
|
Мат.анализ |
Пазий Н. |
|
|
|
…. |
|
|
|
|
2 |
МП-201 |
……. |
|
|
|
Факультет Физический
……….
7. Сделать форму Заполнение экзаменационной ведомости
Примерный вид экрана
Сначала выбрать группу (выпадающий список) потом выбрать дисциплину (выпадающий список). Преподаватель проставляется автоматически
Создать справочник оценок.
Для выпадающих списков используются следующие справочники :
Список групп
Список предметов
и распределение предметов (для преподавателя)
8. Распечатать все экзаменационные ведомости для всех групп по всем предметам с указанием названия курса и преподавателя, который его ведет
Пример.
Дисциплина Алгебра.
Группа ММ-101
Преподаватель Алеев Р.Ж.
Студент |
Оценка |
Иванов |
Отлично |
Петров |
Хорошо |
………. |
|
Дисциплина Теория вероятности
Группа МП-303
Преподаватель Соловьев
Студент |
Оценка |
Иванова |
Отлично |
Петрова |
Хорошо |
………. |
|
……..
9.
Итоговый отчет за сессию
*******
Факультет |
Кол-во групп |
Кол-во студентов |
Кол-во отличников |
Кол-во должников |
Математический |
10 |
200 |
12 |
3 |
……. |
|
|
|
|
групп всего |
|
|
|
|
Отличник – значит 5-ки по всем предметам
Подсказка. Создать промежуточную итоговую таблицу с соответствующими полями и заполнять ее данными с помощью запросов (на каждый столбец – свой запрос)
Для заполнения факультетов использовать справочник факультетов (Insert-запрос), для остальных полей – Update – запросы.
10.
Создать итоговый отчет
по кафедрам *******
Кафедра |
Кол-во групп |
Кол-во Студентов |
Кол-во часов |
Кол-во Экзаменов |
Кол-во зачетов |
Алгебры |
8 |
100 |
1200 |
6 |
2 |
Оптимизаци |
10 |
120 |
2000 |
5 |
5 |
Подсказка. Создать промежуточную итоговую таблицу с соответствующими полями и заполнять ее данными с помощью запросов (на каждый столбец – свой запрос)
Для заполнения кафедр использовать таблицу kafedr (Insert-запрос), для остальных полей – Update – запросы.
11. Распечатать пофамильный список
всех отличников с указанием группы.
(Отличник – значит 5-ки по всем предметам)
12. Создать итоговый отчет по всем преподавателям ********
Преподаватель |
Кол-во групп |
Кол-во Студентов |
Кол-во часов |
Кол-во Экзаменов |
Кол-во зачетов |
Алеев |
8 |
100 |
1200 |
6 |
2 |
Воронин |
10 |
120 |
2000 |
5 |
5 |
Подсказка. Создать промежуточную итоговую таблицу с соответствующими полями и заполнять ее данными с помощью запросов (на каждый столбец – свой запрос)
Для заполнения преподавателей использовать таблицу Preps (Insert-запрос), для остальных полей – Update – запросы.
13. Создать итоговый отчет по всем группам ********
Группа |
Кол-во задолжников |
Кол-во студентов |
Кол-во Отличнико |
Кол-во Экзаменов |
Кол-во зачетов |
ММ-101 |
2 |
20 |
|
6 |
2 |
ММ-102 |
3 |
22 |
|
5 |
5 |
Подсказка. Создать промежуточную итоговую таблицу с соответствующими полями и заполнять ее данными с помощью запросов (на каждый столбец – свой запрос)
Для заполнения преподавателей использовать таблицу Preps (Insert-запрос), для остальных полей – Update – запросы.