Дипломная работа: Информационная система для поддержки учебной деятельности ДЮСШ
Ограничения
предметной области:
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 СПИСОК УЧАЩИХСЯ
Страницы: 1, 2, 3, 4, 5, 6, 7, 8 |