Информационная система для поддержки учебной деятельности ДЮСШ
Ограничения
предметной области:
1. У сотрудника
может быть только один адрес и один телефон, телефон может принимать NULL-значение
2. Номер
страхового полиса уникален, у одного сотрудника может быть только один полис.
3. Паспортные
данные уникальны, у сотрудника может быть только один паспорт
4. Сотрудник
может совмещать несколько должностей.
5. Каждый тренер
ведет занятия только в одном отделении.
6. Один учащийся
в заданный момент времени занимается только в одном отделении и одной группе.
7. В одном городе
может проходить несколько соревнований
8. У тренера
может быть несколько званий
9. В один день может
быть несколько соревнований только у разных отделений.
10. Одним приказом можно присвоить только массовые разряды
группе учащихся, занимающихся у одного тренера
11. Некоторые из сотрудников могут
быть экспертами.
12. В одной группе может вести
занятия только один тренер
13. Один тренер может вести
занятия в нескольких группах.
14. У одной семьи может быть
несколько социальных статусов
15. Учащийся может быть отчислен
несколько раз
16. Учащийся может быть зачислен
несколько раз
17. У одного соревнования может
быть несколько программ
Справочники
(стержни):
СПИСОК
СОТРУДНИКОВ (таб_ном, Ф.И.О._сотр, дата_р_с, телефон_с, пасп_дан,
адрес_с, дата_нач_р, дата_оконч_р, №полиса, пол, ставка, штат_сотр);
СПИСОК УЧАЩИХСЯ (ном_уч,
Ф.И.О._уч, дата_р_уч, тел_уч, адрес_уч, Ф.И.О._м, Ф.И.О._п, пол);
СОЦ СТАТУС СЕМЬИ
(код_стат, соц_стат);
ЛУЧШИЕ УЧАЩИЕСЯ (ном_уч,
год_л_уч, лучший_уч) [список учащихся];
ОБРАЗОВАТЕЛЬНЫЕ
УЧЕРЕЖДЕНИЯ (код_обр_уч, обр_уч);
ОТДЕЛЕНИЯ (код_отделения,
отделение);
ПОЧЕТНЫЕ ЗВАНИЯ (Код_звания,
звание);
ДОЛЖНОСТИ (код_долж,
должность);
ГОРОДА (код_города,
город);
УРОВЕНЬ
СОРЕВНОВАНИЙ (код_ур, ур_сор);
РАЗРЯД (код_разр,
разряд);
УРОЕНЬ ЗДОРОВЬЯ (код_ур_з,
уровень здор);
КАТЕГОРИИ (код_кат,
категория);
ПРОГРАММА
СОРЕВНОВАНИЙ (код_прогр_сор, прогр, сор);
ОБРАЗОВАНИЕ
(код_образ, образование);
Обозначения:
СПИСОК ГРУПП (код_группы,
группа, код_отделения,) [ОТДЕЛЕНИЯ];
ОБРАЗОВАНИЕ
СОТРУДНИКОВ (таб_ном, код_образ) [СПИСОК СОТРУДНИКОВ] [ОБРАЗОВАНИЕ];
ЗАЧИСЛЕНИЕ
УЧАЩИХСЯ (код_зач, ном_уч, дата_зач, №прик_зач) [СПИСОК УЧАЩИХСЯ];
ВЫПУСК УЧАЩИХСЯ (код_зач,
дата_оконч, №прик_отч, №прик_разр_к) [СПИСОК УЧАЩИХСЯ];
СЕМЬЯ УЧАЩЕГОСЯ (ном_уч,
код_стат) [СПИСОК УЧАЩИХСЯ] [СОЦ СТАТУС СЕМЬИ];
АТТЕСТАЦИЯ
ТРЕНЕРОВ (таб_ном, код_эксп, код_заяв_кат, код_утв_кат, дата_атт_трен)
[СПИСОК СОТРУДНИКОВ] [КАТЕГОРИИ];
СОРЕВНОВАНИЯ (Код_сор,
код_города, ранг, код_ур, код_прогр_сор, фин_сор, дата_сор) [ГОРОДА] [УРОВЕНЬ
СОРЕВНОВАНИЙ] [ПРОГРАММА СОРЕВНОВАНИЙ];
КОМПЛЕКТОВАНИЕ УЧ
(код_группы, ном_уч) [СПИСОК ГРУПП] [СПИСОК УЧАЩИХСЯ];
РЕЗУЛЬТАТ
ВЫСТУПЛЕНИЙ НА СОРЕВНОВАНИЯХ (ном_уч, код_сор, кол_бал, таб_ном) [СПИСОК
УЧАЩИХСЯ] [СПИСОК СОТРУДНИКОВ] [СОРЕВНОВАНИЯ];
СПОРТСМЕНЫ –
РАЗРЯДНИКИ (код_с_р, ном_уч, код_разр, дата_разр, таб_ном, ном_прик)
[СПИСОК УЧАЩИХСЯ] [СПИСОК СОТРУДНИКОВ] [РАЗРЯД];
ОЗДОРОВЛЕНИЕ
УЧАЩИХСЯ (ном_уч, дата_з, код_ур_з) [СПИСОК УЧАЩИХСЯ] [УРОВЕНЬ
ЗДОРОВЬЯ];
ЗАСЛУЖЕННЫЕ
РАБОТНИКИ (таб_ном, код_звания,) [СПИСОК СОТРУДНИКОВ] [ПОЧЕТНЫЕ
ЗВАНИЯ];
ДОЛЖНОСТИ
СОТРУДНИКОВ (таб_ном, код_долж, дата_зач_должн) [СПИСОК
СОТРУДНИКОВ] [ДОЛЖНОСТИ];
Далее было
проектирование базовых реляционных таблиц.
Описание
таблиц на SQL.
CREATE
TABLE СПИСОК СОТРУДНИКОВ
(Таб_ном
INTEGER PRIMARY KEY,
Ф.И.О._сотр TEXT(30) NOT NULL,
Дата_р_с DATE NOT NULL,
Телефон_с
CHAR(10),
Пасп_дан CHAR (100) UNIQUE NOT NULL,
Адрес_с CHAR(100)
NOT NULL,
Дата_нач_р DATE NOT NULL,
Дата_оконч_р DATE,
№полиса CHAR (10) UNIQUE,
ставка
штат_сотр
пол TEXT (1) NOT NULL,
CHECK (пол IN («м»,
«ж»)));
CREATE
TABLE СПИСОК УЧАЩИХСЯ
(ном_уч
INTEGER PRIMARY KEY,
Ф.И.О._уч TEXT(30) NOT NULL,
дата_р_уч DATE NOT NULL,
тел_уч
CHAR(10),
адрес_уч
CHAR(100) NOT NULL,
Ф.И.О._м TEXT(30),
Ф.И.О._п TEXT(30),
пол TEXT (1) NOT NULL,
CHECK (пол IN («м»,
«ж»)));
CREATE
TABLE СОЦ СТАТУС СЕМЬИ
(код_стат
INTEGER PRIMARY KEY,
соц_стат TEXT(20);
CHECK (соц_стат IN («многодетная семья», «неполная семья», «опекаемые дети», «состоит
на учете в ОППН», «малоимущая семья», «неблагополучная семья»)));
CREATE TABLE ОБРАЗОВАТЕЛЬНЫЕ УЧЕРЕЖДЕНИЯ
(код_обр_уч
INTEGER PRIMARY KEY,
обр_уч CHAR(10)
CHECK (обр_уч IN («МОУ СОШ №1»,» МОУ СОШ №2»,» МОУ СОШ №3»,» МОУ СОШ №4»,» МОУ СОШ №5»,»
МОУ СОШ №6»,» МОУ СОШ №8»,» МОУ СОШ №10», «МОУ СОШ №12», «МОУ СОШ №15»,
«Профессиональные и высшие учебные заведения»,» МДОУ»)));
CREATE
TABLE ОТДЕЛЕНИЯ
(код_отделения INTEGER
PRIMARY KEY,
отделение TEXT(20);
CHECK (отделение IN («спортивная гимнастика»,» лёгкая атлетика»,» волейбол»)));
CREATE
TABLE ПОЧЕТНЫЕ ЗВАНИЯ
(Код_звания
INTEGER
PRIMARY KEY,
звание TEXT(30)
CHECK (звание IN («Заслуженный тренер России»,» Почётный работник общего
образования»,» Отличник физической культуры и спорта РФ»,» Мастер спорта
международного класса»,» Мастер спорта РФ»,» Знак «80-лет Министерству по
физической культуре, спорту и туризму Свердловской области»)));
CREATE
TABLE ДОЛЖНОСТИ
(код_долж
INTEGER
PRIMARY KEY,
должность TEXT(15)
CHECK (должность IN («тренер», «методист», «директор»)));
CREATE
TABLE ГОРОДА
(код_города
INTEGER
PRIMARY KEY,
города TEXT(20)
CHECK (города IN («Алапаевск», «Екатеринбург», «Челябинск», «Нижний Тагил»)));
CREATE
TABLE УРОВЕНЬ СОРЕВНОВАНИЙ
(код_ур INTEGER PRIMARY KEY,
ур_сор TEXT(20)
CHECK (ур_сор IN («международные», «всероссийские», «зональные», «областные», «районные»,
«городские»)));
CREATE
TABLE РАЗРЯД
(код_разд
INTEGER
PRIMARY KEY,
разряд TEXT(20)
CHECK (разряд IN («первый юношеский», «второй юношеский», «третий юношеский», «первый
взрослый», «второй взрослый», «третий взрослый», «четвертый взрослый», «пятый
взрослый», «кандидат в мастера спорта», «мастер спорта России», «мастер спорта
России международного класса»)));
CREATE
TABLE УРОВЕНЬ ЗДОРОВЬЯ
(код_ур_з INTEGER PRIMARY KEY,
Ур_здор TEXT
CHECK (группа IN («низкий», «ниже среднего», «средний», «выше
среднего», «высокий»)));
CREATE
TABLE КАТЕГОРИИ
(код_кат INTEGER PRIMARY KEY,
категория CHAR(10)
CHECK (группа IN («первая», «вторая», «высшая»)));
CREATE TABLE ПРОГРАММА СОРЕВНОВАНИЙ
(код_прогр_сор
INTEGER PRIMARY KEY,
прогр_сор TEXT
CHECK (прогр_сор IN («произвольная», «общая»);
ОБРАЗОВАНИЕ
СОТРУДНИКОВ (таб_ном, код_образ) [список сотрудников] [образование];
CREATE TABLE ОБРАЗОВАНИЕ СОТРУДНИКОВ
(таб_ном INTEGER
код_образ INTEGER)
PRIMARY KEY (таб_ном, код_образ),
FOREIN KEY (таб_ном) REFERENCES
СПИСОК СОТРУДНИКОВ
ON
DELETE CASCADE
ON
UPDATE CASCADE
FOREIN
KEY (код_образ) REFERENCES ОБРАЗОВАНИЕ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE СПИСОК ГРУПП
(код_группы
INTEGER
PRIMARY KEY,
код_отделения INTEGER PRIMARY KEY,
группа CHAR(10))
PRIMARY
KEY (код_группы),
FOREIN
KEY (код_отделения) REFERENCES ОТДЕЛЕНИЯ
ON
DELETE CASCADE
ON UPDATE CASCADE
CHECK (группа IN («СОГ», «Н/П-1г», «Н/П-1в», «Н/П-1а», «Н/П-2г»,
«Н/П-2в», «Н/П-2а», «Н/П-3г», «Н/П-3в», «Н/П-3а», «УТГ-1г», «УТГ-1в», «УТГ-1а»,
«УТГ-2г», «УТГ-2в», «УТГ-2а», «УТГ-3г», «УТГ-3в», «УТГ-3а», «УТГ-4г», «УТГ-4в»,
«УТГ-4а», «УТГ-5г», «УТГ-5в», «УТГ-5а», «С/С-1г», «С/С-1в», «С/С-1а», «С/С-2г»,
«С/С-2в», «С/С-2а», «ВСМ»)));
CREATE
TABLE ВЫПУСК УЧАЩИХСЯ
(ном_учINTEGER NOT NULL,
Дата_окончDATA
№прик_отч TEXT
№прик_разр_к TEXT),
PRIMARY
KEY (ном_уч),
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE ЗАЧИСЛЕНИЕ УЧАЩИХСЯ
(ном_учINTEGER NOT NULL,
код_обр_уч INTEGER NOT NULL,
Дата_зач DATA
№прик_зач TEXT),
PRIMARY
KEY (ном_уч)
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN KEY (код_обр_уч) REFERENCES
ОБРАЗОВАТЕЛЬНЫЕ УЧЕРЕЖДЕНИЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE СЕМЬЯ УЧАЩЕГОСЯ
(ном_уч
INTEGER NOT NULL
код_стат INTEGER NOT NULL)
PRIMARY
KEY (ном_уч),
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (код_стат) REFERENCES СОЦ СТАТУС СЕМЬИ
ON
DELETE RESTRICT
ON
UPDATE CASCADE;
CREATE
TABLE АТТЕСТАЦИЯ ТРЕНЕРОВ
(таб_ном
INTEGER NOT NULL
код_меропр INTEGER NOT NULL
месяц DATA
кат_заяв INTEGER
утв_кат INTEGER
дата_атт_трен DATA),
PRIMARY
KEY (таб_ном, код_меропр),
FOREIN
KEY (таб_ном) REFERENCES СПИСОК СОТРУДНИКОВ,
ON
DELETE CASCADE
ON
UPDATE CASCADE
FOREIN
KEY (кат_заяв) REFERENCES КАТЕГОРИИ,
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (утв_кат) REFERENCES КАТЕГОРИИ,
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE СОРЕВНОВАНИЯ
(код_сор
INTEGER NOT NULL,
код_города INTEGER NOT NULL
ранг TEXT
код_ур
INTEGER NOT NULL
прогр_сор TEXT
фин_сор LOGICAL
Дата_сор DATE),
PRIMARY
KEY (код_сор),
FOREIN
KEY (код_гор) REFERENCES ГОРОДА
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN KEY (код_ур) REFERENCES
УРОВЕНЬ СОРЕВНОВАНИЙ;
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN KEY (код_прогр_сор) REFERENCES
ПРОГРАММА СОРЕВНОВАНИЙ;
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE КОМПЛЕКТОВАНИЕ УЧ
(код_группы
INTEGER NOT NULL
ном_уч
INTEGER NOT NULL),
PRIMARY KEY (код_группы, ном_уч),
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ,
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (код_группы) REFERENCES СПИСОК ГРУПП;
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE TABLE РЕЗУЛЬТАТ ВЫСТУПЛЕНИЙ НА СОРЕВНОВАНИЯХ
(ном_уч
INTEGER NOT NULL
код_сор INTEGER NOT NULL
кол_бал INTEGER
таб_ном INTEGER NOT NULL),
PRIMARY
KEY (ном_уч,
код_сор),
FOREIN
KEY (таб_ном) REFERENCES СПИСОК СОТРУДНИКОВ,
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (код_сор) REFERENCES СОРЕВНОВАНИЯ,
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ;
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE СПОРТСМЕНЫ – РАЗРЯДНИКИ
(код_с_р INTEGER NOT NULL
ном_уч
INTEGER NOT NULL
ном_п_п INTEGER NOT NULL
разряд TEXT
код_отделения INTEGER NOT NULL
дата_разр DATA
таб_ном INTEGER NOT NULL
ном_прик INTEGER),
PRIMARY
KEY (код_с_р),
FOREIN
KEY (таб_ном) REFERENCES СПИСОК СОТРУДНИКОВ,
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
FOREIN
KEY (код_отделения) REFERENCES ОТДЕЛЕНИЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE ОЗДОРОВЛЕНИЕ УЧАЩИХСЯ
(ном_уч
INTEGER NOT NULL
дата_з
DATA
код_ур_здор TEXT),
PRIMARY
KEY (ном_уч,
дата_з),
FOREIN
KEY (ном_уч)
REFERENCES СПИСОК УЧАЩИХСЯ
ON
DELETE CASCADE
ON
UPDATE CASCADE
FOREIN
KEY (код_ур_з) REFERENCES СПИСОК УЧАЩИХСЯ
ON
DELETE RESTRICT
ON
UPDATE RESTRICT
CREATE
TABLE ЗАСЛУЖЕННЫЕ РАБОТНИКИ
(таб_ном
INTEGER NOT NULL
код_звания INTEGER NOT NULL),
PRIMARY KEY (таб_ном, код_звания
FOREIN
KEY (таб_ном) REFERENCES СПИСОК СОТРУДНИКОВ
ON
DELETE CASCADE
ON
UPDATE CASCADE
FOREIN
KEY (код_звания) REFERENCES ЗВАНИЯ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
CREATE
TABLE ДОЛЖНОСТИ СОТРУДНИКОВ
(таб_ном
INTEGER NOT NULL
Ф.И.О._сотр TEXT
Код_долж INTEGER NOT NULL
Должность TEXT
Дата_зач_должн DATA),
PRIMARY
KEY (таб_ном, код_долж
FOREIN
KEY (таб_ном) REFERENCES СПИСОК СОТРУДНИКОВ
ON
DELETE CASCADE
ON
UPDATE CASCADE
FOREIN
KEY (код_долж) REFERENCES ДОЛЖНОСТИ
ON
DELETE RESTRICT
ON
UPDATE CASCADE
1. Таблицы,
состоящие из 2х атрибутов находятся в НФБК.
Это таблицы:
СОЦ СТАТУС СЕМЬИ
(код_стат, соц_стат);
ОБРАЗОВАТЕЛЬНЫЕ
УЧЕРЕЖДЕНИЯ (код_обр_уч, обр_уч);
ОТДЕЛЕНИЯ (код_отделения,
отделение);
ПОЧЕТНЫЕ ЗВАНИЯ (Код_звания,
звание);
ДОЛЖНОСТИ (код_долж,
должность);
ГОРОДА (код_города,
город);
УРОВЕНЬ
СОРЕВНОВАНИЙ (код_ур, ур_сор);
РАЗРЯД (код_разр,
разряд);
УРОЕНЬ ЗДОРОВЬЯ (код_ур_з,
уровень здор);
КАТЕГОРИИ (код_кат,
категория);
ПРОГРАММА
СОРЕВНОВАНИЙ (код_прогр_сор, прогр, сор);
ОБРАЗОВАНИЕ
(код_образ, образование);
КОМПЛЕКТОВАНИЕ
ТРЕНЕР (таб_ном, код_группы) [список сотрудников] [список групп];
КОМПЛЕКТОВАНИЕ УЧ
(код_группы, ном_уч) [список групп] [список учащихся];
ОБРАЗОВАНИЕ
СОТРУДНИКОВ (Ф.И.О._сотр, образование) [список сотрудников] [образование];
СЕМЬЯ УЧАЩЕГОСЯ (ном_уч,
код_стат) [список учащихся] [Соц статус семьи];
ЗАСЛУЖЕННЫЕ
РАБОТНИКИ (таб_ном, код_звания,) [список сотрудников] [почетные
звания];
2. Все таблицы,
имеющие несоставные PK, находятся во 2НФ. Проверим, нет ли в них
транзитивных зависимостей.
СПИСОК
СОТРУДНИКОВ (таб_ном, Ф.И.О._сотр, дата_р_с, телефон_с, пасп_дан,
адрес_с, дата_нач_р, дата_оконч_р, №полиса, пол, ставка, штат_сотр);
СПИСОК УЧАЩИХСЯ (ном_уч,
Ф.И.О._уч, дата_р_уч, тел_уч, адрес_уч, Ф.И.О._м, Ф.И.О._п, пол);
Очевидно, что
таблицы СПИСОК СОТРУДНИКОВ и СПИСОК УЧАЩИХСЯ
находятся в НФБК.
СПИСОК ГРУПП
(группа, отделениие) [отделения];
ФЗ: отделение à группа. Отделение – возможный ключ.
Значит таблица находится в НФБК
СОРЕВНОВАНИЯ
(город, ранг, ур_сор, прогр_сор, фин_сор, дата_сор) [города] [уровень
соревнований] [программа соревнований];
ФЗ: (город,
ур_сор, прогр_сор, дата_сор)àранг,
(город, ур_сор, прогр_сор, дата_сор)àфин_сор. Но (город,
ур_сор, прогр_сор, дата_сор) – возможный ключ. Значит все ФЗ в таблице сводятся
к полной ФЗ от возможного ключа. Т.о. таблица СОРЕВНОВАНИЯ
находится в НФБК.
СПОРТСМЕНЫ –
РАЗРЯДНИКИ (Ф.И.О._уч, разряд, дата_разр, Ф.И.О._сот, ном_прик) [список
учащихся] [список сотрудников] [разряд];
ФЗ: (Ф.И.О._уч,
разряд, дата_разр) àФ.И.О._сот,
(Ф.И.О._уч, разряд, дата_разр) àном_прик.
Но (Ф.И.О._уч, разряд, дата_разр) – возможный ключ. Значит все ФЗ в таблице сводятся к полной ФЗ от
возможного ключа. Т.о. таблица СПОРТСМЕНЫ
– РАЗРЯДНИКИ находится в
НФБК.
3. Таблицы с
составными PK.
ЛУЧШИЕ УЧАЩИЕСЯ (ном_уч,
год_л_уч, лучший_уч) [список учащихся];
ФЗ: (ном_уч, год_л_уч) àлучший учащийся.
(ном_уч,
год_л_уч) – составной ключ. Таблица находится в НФБК.
ЗАЧИСЛЕНИЕ
УЧАЩИХСЯ (ном_уч, дата_зач, №прик_зач) [список учащихся];
ФЗ: (ном_уч,
дата_зач) à№прик_зач
(ном_уч,
дата_зач) – составной ключ. Таблица находится в НФБК.
ВЫПУСК УЧАЩИХСЯ
(ном_уч, дата_зач, дата_оконч, №прик_отч, №прик_разр_к) [список учащихся];
ФЗ: (ном_уч,
дата_зач) àдата_оконч,
(ном_уч, дата_зач) à№прик_отч, (ном_уч, дата_зач) à№прик_разр_к
(ном_уч,
дата_зач) – возможный составной ключ. Таблица находится в НФБК.
АТТЕСТАЦИЯ
ТРЕНЕРОВ (Ф.И.О._сотр, Ф.И.О._эксп, заяв_кат, утв_кат, дата_атт_трен)
[список сотрудников] [категории];
ФЗ: (Ф.И.О._сотр,
дата_атт_трен) àФ.И.О._эксп,
(Ф.И.О._сотр, дата_атт_трен) àзаяв_кат,
(Ф.И.О._сотр, дата_атт_трен) àутв_кат.
(Ф.И.О._сотр,
дата_атт_трен) – возможный
составной ключ. Таблица находится в НФБК.
РЕЗУЛЬТАТ
ВЫСТУПЛЕНИЙ НА СОРЕВНОВАНИЯХ (Ф.И.О._уч, код_сор, кол_бал, Ф.И.О._трен)
[список учащихся] [список сотрудников] [соревнования];
ФЗ: (Ф.И.О._уч,
код_сор) àкол_бал,
(Ф.И.О._уч, код_сор) àФ.И.О._трен.
(Ф.И.О._уч, код_сор) – возможный
составной ключ. Таблица находится в НФБК.
СПОРТСМЕНЫ –
РАЗРЯДНИКИ (Ф.И.О._уч, разряд, дата_разр, Ф.И.О._сот, ном_прик) [список
учащихся] [список сотрудников] [разряд];
ФЗ: (Ф.И.О._уч,
разряд, дата_разр) àФ.И.О._сот,
(Ф.И.О._уч, разряд, дата_разр) àном_прик
(Ф.И.О._уч, разряд, дата_разр) –
возможный составной ключ. Таблица находится в НФБК.
ОЗДОРОВЛЕНИЕ
УЧАЩИХСЯ (Ф.И.О._уч, дата_з, ур_здор) [список учащихся] [уровень
здоровья];
ФЗ: (Ф.И.О._уч,
дата_з) àур_з.
Таблица находится
в НФБК.
ДОЛЖНОСТИ
СОТРУДНИКОВ (Ф.И.О._сот должность, дата_зач_должн) [список
сотрудников] [должности];
ФЗ: (Ф.И.О._сот,
должность) àдата_зач_должн.
Таблица находится
в НФБК.
Схема данных
2.4.1 Обоснование выбора СУБД
Microsoft Access
2003 представляет собой СУБД которая предназначена для создания настольных
приложений и приложений клиент / сервер, работающих под управлением Windows
2000 и XP.
1. Access предоставляет разработчикам средства,
необходимые для создания развитых сложных баз данных, легко интегрирующихся со
структурой данных предприятия, обеспечивая при этом прямую и обратную
совместимость с существующими и новыми решениями. Access 2003 предоставляет
средства для создания решений, интегрирующих и использующих преимущества Internet
2. Способы
анализа данных пользователями с помощью динамических сводных таблиц и сводных диаграмм,
3. Страницы
доступа к данным, позволяющие пользователям распространять приложения
корпоративных баз данных в Internet.
4. Система
поддерживает все средства для создания, введения и защиты от
несанкционированного доступа к данным
5. Система позволяет
импортировать и экспортировать файлы многих известных форматов
6. Одна из важных
возможностей access – создание запросов
Таким образом,
средств Access 2003 достаточно для реализации моего
проекта. Кроме того, в организации приобретение лицензии другой СУБД в
ближайшее время не планируется.
Для информационная
система для поддержки учебной деятельности ДЮСШ №1 г. Алапаевск был
спроектирован многостраничный интерфейс в соответствии с категориями пользователей.
Такой интерфейс позволяет просто переводить информационную систему в
многопользовательский вариант технологии клиент-сервер.
Главная форма:
Рис. 2.1
Директор:
Автоматизированное
рабочее место директора, рис 2.2
Просмотр и печать отчетов
директора:
Форма для
просмотра и печати директоров, рис 2.3
Методист:
Автоматизированное
рабочее место методиста, рис 2.4
Отчеты методиста:
Отчеты
методиста"рис 2.5
Форма «Справочники»:
Справочники, рис
2.6
Форма «Для форм учащихся»:
Для форм учащихся,
рис 2.7
Форма «Для форм сотрудников»:
Для форм
сотрудников, рис 2.8
Форма «Для форм соревнований»:
Для форм
соревнований, рис 2.9
Тренер:
Автоматизированное
рабочее место тренера, рис 2.4
Форма «Просмотр и печать отчетов
тренера»:
Отчеты тренера, рис
2.10
2.4.3 Проектирование запросов
1. Запрос «аттестация
тренеров запрос». Для отчета «Аттестация тренеров».
SELECT
[Аттестация тренеров]. таб_ном, [Список сотрудников]. Ф.И.О._сотр, [Аттестация тренеров].
дата_атт_трен, [Аттестация тренеров]. код_эксп, [Список сотрудников_1].Ф.И.О._сотр,
[Аттестация тренеров]. код_кат_заяв, Категории.категория, [Аттестация тренеров].
код_утв_кат, Категории_1.категория
FROM [Список
сотрудников] AS [Список сотрудников_1] INNER JOIN (Категории AS Категории_1
INNER JOIN ([Список сотрудников] INNER JOIN (Категории INNER JOIN [Аттестация
тренеров] ON Категории.код_кат = [Аттестация тренеров]. код_кат_заяв) ON
[Список сотрудников]. таб_ном = [Аттестация тренеров]. таб_ном) ON
Категории_1.код_кат = [Аттестация тренеров]. код_утв_кат) ON [Список
сотрудников_1].таб_ном = [Аттестация тренеров]. код_эксп;
2. «Запрос
должности сотрудников». Для связанной формы «должности сотрудников».
SELECT [Должности
сотрудников]. таб_ном, [Список сотрудников]. Ф.И.О._сотр, [Должности сотрудников].
код_долж, Должности.должность, [Должности сотрудников]. дата_зач_должн
FROM [Список
сотрудников] INNER JOIN (Должности INNER JOIN [Должности сотрудников] ON
Должности.код_долж = [Должности сотрудников]. код_долж) ON [Список сотрудников].
таб_ном = [Должности сотрудников]. таб_ном;
3. Запрос «Вспомог
запрос» для запроса «Список учащихся за определенный период».
SELECT [Список учащихся].
Ф.И.О._уч, [Зачисление учащихся]. дата_зач, [Выпуск учащихся]. дата_оконч
FROM [Список
учащихся] INNER JOIN ([Зачисление учащихся] LEFT JOIN [Выпуск учащихся] ON
[Зачисление учащихся]. код_зач = [Выпуск учащихся]. код_зач) ON [Список учащихся].
Ном_уч = [Зачисление учащихся]. ном_уч;
4. «Заслуженные
работники запрос». Для связанной формы «заслуженные работники».
SELECT [Список сотрудников].
Ф.И.О._сотр, [Почетные звания]. звание
FROM [Список
сотрудников] INNER JOIN ([Почетные звания] INNER JOIN [Заслуженные работники]
ON [Почетные звания]. код_звания = [Заслуженные работники]. код_звания) ON
[Список сотрудников]. таб_ном = [Заслуженные работники]. таб_ном;
5. Запрос «затч-отч».
Для отчета «учет поступлений и выпуска учащихся».
SELECT [Список учащихся].
Ном_уч, [Список учащихся]. Ф.И.О._уч, [Зачисление учащихся]. дата_зач,
[Зачисление учащихся]. №прик_зач, [Выпуск учащихся]. дата_оконч, [Выпуск
учащихся]. №прик_отч
FROM [Список
учащихся] INNER JOIN ([Зачисление учащихся] LEFT JOIN [Выпуск учащихся] ON
[Зачисление учащихся]. код_зач = [Выпуск учащихся]. код_зач) ON [Список учащихся].
Ном_уч = [Зачисление учащихся]. ном_уч;
6. Запрос «Список группы» для формы «Список группы».
SELECT
[комплектование уч]. код_группы, [Список групп]. группа, [Список групп]. код_отделения,
[Список групп]. таб_ном, [комплектование уч]. ном_уч, [Список учащихся]. Ф.И.О._уч
FROM [Список
учащихся] INNER JOIN ([Список групп] INNER JOIN [комплектование уч] ON [Список групп].
код_группы = [комплектование уч]. код_группы) ON [Список учащихся]. Ном_уч =
[комплектование уч]. ном_уч;
7. Запрос «КАЧЕСТВО
СПОРТИВНОЙ ПОДГОТОВКИ УЧАЩИХСЯ МОУ ДОД ДЮСШ №1» для сводной таблицы, сводной
диаграммы, отчета «КАЧЕСТВО СПОРТИВНОЙ ПОДГОТОВКИ УЧАЩИХСЯ МОУ ДОД ДЮСШ №1»
SELECT
[Спортсмены-разрядники]. ном_уч, [Спортсмены-разрядники]. код_разр, Разряд.разряд,
[Спортсмены-разрядники]. дата_разр
FROM Разряд INNER
JOIN [Спортсмены-разрядники] ON Разряд.код_разр = [Спортсмены-разрядники]. код_разр;
8,9,10. Запросы «кол
групп волейбол», «кол групп легкой атлетики», «кол групп спорт гимнастики» для
отчета «Справка о МОУ».
SELECT
Count([Список групп]. код_группы) AS [Count-код_группы]
FROM [Список
групп]
WHERE ((([Список групп].
код_отделения)=2));
11,12,13,14,15. Запросы
«кол засл тренер россии», «кол знак 80 л мин физ к», «кол мастер спорта», «кол
отлич физ культ и спорта рф», «кол почет работ общего образ» для отчета «Справка
о МОУ часть3».
SELECT
Count([Заслуженные работники]. таб_ном) AS [Count-таб_ном]
FROM [Заслуженные
работники]
WHERE
((([Заслуженные работники]. код_звания)=2));
16,17,18,19,20,21.
Запросы «кол малоимущих семей», «кол многодет семей», «кол неблагополуч семей»,
«кол неполных семей», «кол опекаемых детей», «кол состоят на учете в ОППН» для
отчета «Справка о МОУ часть4»
SELECT
Count([Семья учащегося]. ном_уч) AS [Count-ном_уч]
FROM [Семья учащегося]
WHERE ((([Семья учащегося].
код_стат)=4));
22,23,24 Запросы «кол
сотр вторая кат», «кол сотр высшей кат», «кол сотр первой кат» для отчета
«Справка о МОУ часть 2»
SELECT
Count([Аттестация тренеров]. таб_ном) AS [Count-таб_ном]
FROM [Аттестация
тренеров]
WHERE
((([Аттестация тренеров]. код_утв_кат)=1));
25,26,27,28,29.
Запросы «кол сотр с высшим обр», «кол сотр с высшим физкульт образ», «кол сотр
со средним образ», «кол сотр со средним спец образ», «кол сотр со средним
физкульт образ» для отчета «Справка о МОУ часть 2»
SELECT
Count([образование сотрудников]. таб_ном) AS [Count-таб_ном]
FROM [образование
сотрудников]
WHERE
((([образование сотрудников]. код_образ)=2));
30. Запрос «кол
сотр-м» для отчета «Справка о МОУ часть 2».
SELECT
Count([Список сотрудников]. таб_ном) AS [Count-таб_ном]
FROM [Список
сотрудников]
WHERE ((([Список сотрудников].
Пол)= «м»));
31,32,33. Запросы
«кол уч волейбол»,» кол уч легкая атлетика»,» кол уч
спорт гимпнастика» для отчета «Справка о МОУ».
SELECT
Count([комплектование уч]. ном_уч) AS [Count-ном_уч]
FROM [Список
групп] INNER JOIN [комплектование уч] ON [Список групп]. код_группы=[комплектование
уч]. код_группы
WHERE ((([Список групп].
код_отделения)=2));
34,35,36,37,38.
Запросы «кол уч на всеросс сор за период», «кол уч на город сор за период»,» кол уч
на междунар сор за период»,» кол уч на област сор за период», «кол уч на школьн сор за период» для отчета» участие
в сор за опр период»
SELECT
Count([Список учащихся]. Ном_уч) AS [Count-Ном_уч]
FROM [Список
учащихся] INNER JOIN (Соревнования INNER JOIN [результат выступлений на
соревнованиях] ON Соревнования.код_сор = [результат выступлений на соревнованиях].
код_сор) ON [Список учащихся]. Ном_уч = [результат выступлений на соревнованиях].
ном_уч
WHERE
(((Соревнования.дата_сор)>[введите начальну дату] And
(Соревнования.дата_сор)<[введите конечную дату]))
GROUP BY
Соревнования.код_ур
HAVING
(((Соревнования.код_ур)=2));
39. Запрос «количество
групп» для отчета «Справка о МОУ».
SELECT
Count([Список групп]. код_группы) AS [Count-код_группы]
FROM [Список
групп];
40. Запрос
«количество учащихся» для отчета «Справка о МОУ».
SELECT
Count([Список учащихся]. Ном_уч) AS [Count-Ном_уч]
FROM [Список
учащихся];
41. Запрос
«количество штатных сотрудников» «Справка о МОУ часть 2».
SELECT Count([Список
сотрудников]. таб_ном) AS [Count-таб_ном]
FROM [Список
сотрудников]
WHERE ((([Список сотрудников].
Штат_сотр)=Yes));
42. «лучшие
учащиеся запрос» для связанной формы «лучший учащийся».
SELECT [Лучшие учащиеся].
ном_уч, [Список учащихся]. Ф.И.О._уч, [Лучшие учащиеся]. год_л_уч, [Лучшие учащиеся].
лучший_уч
FROM [Список
учащихся] INNER JOIN [Лучшие учащиеся] ON [Список учащихся]. Ном_уч = [Лучшие учащиеся].
ном_уч;
43,44,45,46.
Запросы «мастер спорта», «мастер спорта международного класса», «отлич физ к и
спорта рф», «почет раб общего образ» для личного пользования методиста.
SELECT [Список сотрудников].
Ф.И.О._сотр
FROM [Список
сотрудников] INNER JOIN ([Почетные звания] INNER JOIN [Заслуженные работники]
ON [Почетные звания]. код_звания = [Заслуженные работники]. код_звания) ON
[Список сотрудников]. таб_ном = [Заслуженные работники]. таб_ном
WHERE
((([Заслуженные работники]. код_звания)=2));
47. Запрос «Показатель
здоровья» для личного пользования методиста, сводной таблицы, диаграммы, отчета
«показатель здоровья».
SELECT
[Оздоровление учащихся]. ном_уч, [Оздоровление учащихся]. дата_з, [Оздоровление
учащихся]. код_ур_з, [Уровень здоровья]. Уровень_здор
FROM [Уровень
здоровья] INNER JOIN [Оздоровление учащихся] ON [Уровень здоровья]. Код_ур_з =
[Оздоровление учащихся]. код_ур_з;
48. Запрос «результат
выступлений на соревнованиях Запрос» для связанной формы «результат выступлений
на соревнованиях»
SELECT [результат
выступлений на соревнованиях]. ном_уч, [Список учащихся]. Ф.И.О._уч, [результат
выступлений на соревнованиях]. код_сор, [результат выступлений на соревнованиях].
кол_бал, [результат выступлений на соревнованиях]. таб_ном, [Список сотрудников].
Ф.И.О._сотр
FROM [Список
учащихся] INNER JOIN ([Список сотрудников] INNER JOIN (Соревнования INNER JOIN
[результат выступлений на соревнованиях] ON Соревнования.код_сор = [результат
выступлений на соревнованиях]. код_сор) ON [Список сотрудников]. таб_ном =
[результат выступлений на соревнованиях]. таб_ном) ON [Список учащихся]. Ном_уч
= [результат выступлений на соревнованиях]. ном_уч;
49. Запрос «сведения
о количестве, принявших участие в сор» для личного пользования методиста,
сводной таблицы, диаграммы, отчета «сведения о количестве принявших участие в соревнованиях».
SELECT [результат
выступлений на соревнованиях]. код_сор, [результат выступлений на соревнованиях].
ном_уч, [Список учащихся]. Ф.И.О._уч, Соревнования.код_ур, [Уровень соревнований].
ур_сор, Соревнования.дата_сор
FROM [Уровень
соревнований] INNER JOIN ([Список учащихся] INNER JOIN (Соревнования INNER JOIN
[результат выступлений на соревнованиях] ON Соревнования.код_сор = [результат
выступлений на соревнованиях]. код_сор) ON [Список учащихся]. Ном_уч =
[результат выступлений на соревнованиях]. ном_уч) ON [Уровень соревнований]. код_ур
= Соревнования.код_ур;
50. Запрос «сведения
об учащихся образовательных учреждений» для личного пользования методиста,
сводной таблицы, диаграммы, отчета «сведения об учащихся образовательных учреждений».
SELECT [Список учащихся].
Ном_уч, [Список учащихся]. код_обр_уч, [Образовательные учереждения]. Обр_уч
FROM
[Образовательные учереждения] INNER JOIN [Список учащихся] ON [Образовательные учереждения].
Код_обр_уч = [Список учащихся]. код_обр_уч;
51. «семьи
учащихся запрос» для формы «семья учащегося».
SELECT [Семья учащегося].
ном_уч, [Список учащихся]. Ф.И.О._уч, [Семья учащегося]. код_стат, [Соц статус семьи].
Соц_стат
FROM [Список
учащихся] INNER JOIN ([Соц статус семьи] INNER JOIN [Семья учащегося] ON [Соц
статус семьи]. код_стат = [Семья учащегося]. код_стат) ON [Список учащихся]. Ном_уч
= [Семья учащегося]. ном_уч;
52. «Соревнования
Запрос1» для формы «соревнования».
SELECT
Соревнования.код_сор, Соревнования.код_города, Города.город, Соревнования.ранг,
Соревнования.код_ур, [Уровень соревнований]. ур_сор, Соревнования.код_прогр_сор,
[Программы соревнований]. прогр_сор, Соревнования.фин_сор,
Соревнования.дата_сор
FROM [Уровень
соревнований] INNER JOIN ([Программы соревнований] INNER JOIN (Города INNER
JOIN Соревнования ON Города.код_города = Соревнования.код_города) ON [Программы
соревнований]. код_прогр_сор = Соревнования.код_прогр_сор) ON [Уровень соревнований].
код_ур = Соревнования.код_ур;
53. Запрос «Комплектование
групп» для формы «Комплектование групп».
SELECT [Список групп].
код_группы, [Список групп]. группа, [Список групп]. код_отделения, Отделения.
Отделение, [Список групп]. таб_ном, [Список сотрудников]. Ф.И.О._сотр
FROM [Список
сотрудников] INNER JOIN (Отделения INNER JOIN [Список групп] ON Отделения. Код_отделения
= [Список групп]. код_отделения) ON [Список сотрудников]. таб_ном = [Список групп].
таб_ном;
54. Запрос «Список
учащихся за определенный период» для личного пользования методиста.
SELECT [Список учащихся].
Ф.И.О._уч, [Зачисление учащихся]. дата_зач, [Выпуск учащихся]. дата_оконч
FROM [Список учащихся]
INNER JOIN ([Зачисление учащихся] LEFT JOIN [Выпуск учащихся] ON [Зачисление учащихся].
код_зач = [Выпуск учащихся]. код_зач) ON [Список учащихся]. Ном_уч =
[Зачисление учащихся]. ном_уч
WHERE
((([Зачисление учащихся]. дата_зач)>[введите дату начала] And ([Зачисление учащихся].
дата_зач)<[введите дату конца])) OR ((([Выпуск учащихся]. дата_оконч)>[введите
дату начала] And ([Выпуск учащихся]. дата_оконч)<[введите дату конца])) OR
((([Зачисление учащихся]. дата_зач)<[введите дату начала]) AND (([Выпуск учащихся].
дата_оконч)>[введите дату конца]));
55. Запрос «список
учащихся запрос» для формы «список учащихся».
SELECT [Список учащихся].
Ном_уч, [Список учащихся]. Ф.И.О._уч, [Список учащихся]. Адрес_уч, [Список учащихся].
тел_дом_уч, [Список учащихся]. Тел_сот_уч, [Список учащихся]. Дата_р_уч,
[Список учащихся]. пол, [Список учащихся]. Ф.И.О._м, [Список учащихся]. Ф.И.О._п,
[Список учащихся]. код_обр_уч, [Образовательные учереждения]. Обр_уч
FROM
[Образовательные учереждения] INNER JOIN [Список учащихся] ON [Образовательные учереждения].
Код_обр_уч = [Список учащихся]. код_обр_уч;
56. Запрос «спортсмены-разрядники
запрос» для формы «Спортсмены-разрядники».
SELECT
[Спортсмены-разрядники]. ном_уч, [Список учащихся]. Ф.И.О._уч, [Спортсмены-разрядники].
код_разр, Разряд.разряд, [Спортсмены-разрядники]. дата_разр, [Спортсмены-разрядники].
таб_ном, [Список сотрудников]. Ф.И.О._сотр, [Спортсмены-разрядники]. ном_прик
FROM [Список
учащихся] INNER JOIN ([Список сотрудников] INNER JOIN (Разряд INNER JOIN
[Спортсмены-разрядники] ON Разряд.код_разр = [Спортсмены-разрядники]. код_разр)
ON [Список сотрудников]. таб_ном = [Спортсмены-разрядники]. таб_ном) ON [Список
учащихся]. Ном_уч = [Спортсмены-разрядники]. ном_уч;
57. Запрос «таблица
результатов выступлений на соревнованиях» для формы» таблица
результатов выступлений на соревнованиях».
SELECT [Список учащихся].
Ф.И.О._уч, Соревнования.дата_сор, Города.город, Соревнования.ранг, [Программы соревнований].
прогр_сор, [Уровень соревнований]. ур_сор, Соревнования.фин_сор, [результат
выступлений на соревнованиях]. кол_бал, [Список сотрудников]. Ф.И.О._сотр
FROM [Уровень
соревнований] INNER JOIN ([Список учащихся] INNER JOIN ([Список сотрудников]
INNER JOIN (([Программы соревнований] INNER JOIN (Города INNER JOIN
Соревнования ON Города.код_города = Соревнования.код_города) ON [Программы соревнований].
код_прогр_сор = Соревнования.код_прогр_сор) INNER JOIN [результат выступлений
на соревнованиях] ON Соревнования.код_сор = [результат выступлений на соревнованиях].
код_сор) ON [Список сотрудников]. таб_ном = [результат выступлений на соревнованиях].
таб_ном) ON [Список учащихся]. Ном_уч = [результат выступлений на соревнованиях].
ном_уч) ON [Уровень соревнований]. код_ур = Соревнования.код_ур;
58. Запрос «участие
в сор за опр период» для формы «участие в сор за опр период».
SELECT [кол уч на
всеросс сор за период]. [Count-Ном_уч], [кол уч на город сор за период]. [Count-Ном_уч],
[кол уч на междунар сор за период]. [Count-Ном_уч], [кол уч на област сор за
период]. [Count-Ном_уч], [кол уч на школьн сор за период]. [Count-Ном_уч]
FROM [кол уч на
всеросс сор за период], [кол уч на город сор за период], [кол уч на междунар
сор за период], [кол уч на област сор за период], [кол уч на школьн сор за
период];
59. Запрос «школы
учащихся» для формы «школы учащихся».
SELECT [Список учащихся].
Ном_уч, [Список учащихся]. Ф.И.О._уч, [Список учащихся]. код_обр_уч,
[Образовательные учереждения]. Обр_уч
FROM
[Образовательные учереждения] INNER JOIN [Список учащихся] ON [Образовательные учереждения].
Код_обр_уч = [Список учащихся]. код_обр_уч;
60. Запрос «зач-отч
учащихся» для формы «зач-отч учащихся».
SELECT
[Зачисление учащихся]. код_зач, [Зачисление учащихся]. ном_уч, [Зачисление учащихся].
дата_зач, [Зачисление учащихся]. №прик_зач, [Выпуск учащихся]. дата_оконч,
[Выпуск учащихся]. №прик_отч, [Выпуск учащихся]. №прик_разр_к
FROM [Зачисление
учащихся] LEFT JOIN [Выпуск учащихся] ON [Зачисление учащихся]. код_зач=[Выпуск
учащихся]. код_зач;
61. Запрос «Список
учащихся за определенный период» для отчета «Список учащихся за определенный
период».
SELECT [вспомог запрос].
Ф.И.О._уч, [вспомог запрос]. дата_зач, [вспомог запрос]. дата_оконч
FROM [вспомог
запрос]
WHERE ((([вспомог
запрос]. дата_оконч)>[введите дату начала] And ([вспомог запрос]. дата_оконч)<[введитие
дату конца])) OR ((([вспомог запрос]. дата_оконч) Is Null));
1. Форма «Список сотрудников»
доступна для ввода, изменения и удаления данных о сотрудниках директору и
методисту. Тренеру доступна только для просмотра. Разработка основана на
таблице «Список сотрудников»
рис 2.11.
2. Форма «Список
учащихся» доступна для ввода, изменения и
удаления данных об учащихся директору и методисту. Тренеру доступна только для
просмотра. Разработка основана на запросе» список учащихся запрос».
рис 2.12
3. Форма «Соревнования»
доступна для ввода, изменения и удаления
данных о соревнованиях директору и методисту. Тренеру доступна только для
просмотра. Разработка основана на запросе» Соревнования Запрос1».
рис 2.13
4. Форма «Комплектование
групп» доступна для ввода, изменения и
удаления данных о комплектовании групп директору и методисту. Тренеру доступна
только для просмотра. Разработка основана на запросе «Комплектование групп».
рис 2.14
5. Связанная
форма «Должности сотрудников» для формы «Список сотрудников»
рис 2.15
6. Связанная
форма «Образование сотрудников» для формы «Список сотрудников»
рис 2.16
7. Связанная
форма «Аттестация тренеров» для формы «Список сотрудников»
рис 2.17
8. «Должности
сотрудников подчиненная форма» для формы «Должности сотрудников»
рис 2.18
9. «Образование
сотрудников подчиненная форма» для формы «Образование сотрудников»
рис 2.19
10. Связанная
форма «Оздоровление учащихся» для формы «Список учащихся»
рис 2.20
11. Связанная
форма «Семья учащегося» для формы «Список учащихся»
рис 2.21
12. Связанная
форма «Лучший учащийся» для формы «Список учащихся»
рис 2.22
13. Связанная
форма «Спортсмены – разрядники» для формы «Список учащихся»
рис 2.23
14. Связанная
форма «Зач-отч учащихся» для формы «Список учащихся»
рис 2.24
15. «Семья учащегося подчиненная
форма» для формы «Семья учащегося»
рис 2.25
16. «Лучший учащийся подчиненная
форма» для формы «Лучший учащийся»
рис 2.26
17. Подчиненная форма «Список
групп» для формы «Комплектование групп»
рис 2.27
18. «Список групп подчиненная
форма» для формы «Список групп»
рис 2.28
19. Подчиненная форма «Комплектование
уч» для формы «Список групп подчиненная форма»
рис. 2.29
20. Связанная форма «Результаты
выступлений на соревнованиях» для формы «Соревнования»
рис 2.30
21. Связанная форма «Заслуженные
работники» для формы «Список сотрудников»
рис 2.31
22, 23. Формы «Показатель
здоровья» и» Показатель здоровья диаграмма» для анализа данных методистом и
директором о состоянии здоровья учащихся.
24, 25 Формы «сведения об учащихся
образовательных учреждений» «сведения об учащихся образовательных учреждений
диаграмма» для личного пользования методиста и директора.
26. Форма «Справочники» для общего
пользования
рис 2.32
1. Отчет по аттестации тренеров.
Просматривают и печатают все пользователи. Сгенерирован на основе запроса «Аттестация
тренеров» – см. Приложение 1.
2. Отчет по качеству спортивно
подготовки учащихся. Сгенерирован на основе запроса «Качество спортивной
подготовки учащихся МОУ ДОД ДЮСШ №1» – см. Приложение 2.
3. Отчет о количестве учащихся,
принявших участие в различных соревнованиях. Сгенерирован на основе запроса
«сведения о количестве, принявших участие в сор» – см. Приложение 3.
4. Отчет «Список учащихся за
определенный период». Сгенерирован на основе запроса «список учащихся за
определенный период» – см. Приложение 4.
5. Отчет «Спортсмены –
разрядники». Сгенерирован на основе запроса» спортсмены-разрядники запрос « –
см. Приложение 5.
6. Отчет «Справка о МОУ».
Сгенерирован на основе запросов» часть1», «часть2», «часть3», «часть4» – см.
Приложение 6.
7. Отчет «Учет поступлений и
выпуска учащихся». Сгенерирован на основе запроса» зач-отч»
Заключение
Дипломная работа представляет
собой разработку ИС для муниципального образовательного учреждения
дополнительного образования детей «Детско-юношеская спортивная школа №1»
г. Алапаевск.
В результате проделанной работы:
– спроектирована и
реализована база данных (всего 29 таблиц);
– Спроектированы и
реализованы необходимые для всех категорий пользователей запросы (всего 61);
– На основе запросов
разработан и реализован пользовательский интерфейс, состоящий из форм (всего
45), отчётов (всего 15) и макросов (всего 10).
Разработанная ИС обеспечит
автоматизацию следующих процессов:
– учет численности учащихся;
– получение разрядов
учащимися;
– участие в соревнованиях;
– процесс аттестации тренеров;
– получение званий тренеров;
– Составление отчетной
информации по соревнованиям
– аттестации тренеров;
– оздоровлению учащихся;
– учету зачисления и выпуска
учащихся.
В настоящее время разработка
системы в основном закончена, она продемонстрирована пользователям, которые
будут проводить ее тестирование.
Дальнейшее развитие проекта:
– Для защиты данных базы
необходимо провести разделение пользователей на группы с присвоением каждому
имени и пароля;
– Расширить атрибутику с тем,
чтобы:
– сделать вычисляемым поле «лучший
учащийся»;
– разработать и реализовать
процесс аттестации учащихся;
– Доработать интерфейс с
целью улучшить возможности удобного поиска информации;
– В случае расширения
организации необходимо перенести базу данных на Microsoft SQL Server, в
многопользовательский вариант с архитектурой «клиент-сервер».
Список используемой литературы
1. Дейт К. Руководство по реляционной СУБД DB2.М.: Финансы
и статистика, 1988, 320 с.
2. Дейт К.Дж. Введение в систем баз данных. М.: Изд. Дом «Вильямс»,
2001. 1072 с.
3. Бекаревич Ю.Б., Пушкина Н.В. Microsoft Access 2002. СПб.: БХВ-Петербург, 2003. 718 с.
4. Гринченко Н.Н., Гусев Е.В., Макаров Н.П.
Проектироване баз данных СУБД Microsoft ACCESS: Учеб. Пособие. М.: Горячая линия – Телеком, 2004. 240 с.
5. Шарипова Н.Н. Теория и практика проектирования
баз данных: Учеб. Пособие. Екатеринбург: Издательство Уральского университета,
2006. 380 с.
|