Информационная система для поддержки учебной деятельности ДЮСШ

–PAGE_BREAK–1.3 Основы теории нормализации Э. Кодда

Рассмотрим общую идею нормализации. Причиной, которая может привести к нарушению целостности данных, является избыточность. Э. Кодд исследовал и установил причины, порождающие избыточность, а именно наличие в таблице нежелательных зависимостей между атрибутами. Он предложил способы для избавления от этих зависимостей и, следовательно, от избыточности данных. Кодд ввел понятия функциональных зависимостей между атрибутами и нормальных форм для реляционных таблиц: 1НФ, 2НФ, 3НФ, 4НФ, 5НФ, НФБК.

Определение 1.

Поле В (может быть составным) таблицы функционально зависит от поля А (может быть составным) той же таблицы, если в любой заданный момент времени для каждого из различных значений поля А обязательно существует только одно из различных значений поля В. Обозначение А àВ

Определение 2

Поле В (может быть составным) таблицы находится в полной ФЗот составного поля А той же таблицы, если оно функционально зависит от А (А àВ) и не зависит функционально ни от какого подмножества А. Обозначение: А => В.

Определение 3

Если существует ФЗ между не ключевыми атрибутами (F1 àF2), то такая зависимость называется транзитивной.

Определение 4

Таблица находится в первой нормальной форме (1НФ) тогда и только тогда, когда в каждой ее строке на пересечении со столбцом может содержаться только атомарное значение и ни одно из ее ключевых полей не имеет неопределенного (NULL) значения, т.о. любая реляционная таблица находится в 1НФ.

Определение 5

Таблица находится во второй нормальной форме (2НФ) тогда и только тогда, когда она находится в 1НФ и все ее поля, не входящие в РК (не ключевые), связаны полной ФЗ с РК.

Определение 6

Таблица находится в третьей нормальной форме (ЗНФ) тогда и только тогда, когда она находится в 2НФ и в ней нет транзитивных зависимостей.

Определение 7

Таблица находится в нормальной форме Бойса-Кодда (НФБК) тогда и только тогда, когда любая ФЗ между ее полями является полной ФЗ от возможного ключа.

Определение 8

Полной декомпозициейтаблицы называют такую совокупность ее проекций, естественное соединение которых дает исходную таблицу, причем сохраняются все существовавшие в ней ФЗ.

Процесс нормализации таблицы– это пошаговое разбиение (декомпозиция) таблицы на две (или более) части, которые обладают меньшей избыточностью и, следовательно, лучшими свойствами по отношению к операциям включения, обновления и удаления данных.
1.4 Этапы проектирования базовых таблиц РБД

Проектирование базы данных– это разработка структуры данных и связей с целью создания системы, удовлетворяющей информационным потребностям всех категорий пользователей, для которых она предназначается.

Методология проектирования логических моделей данных делится на два уровня:

– инфологическое проектированиеили построение инфологической модели данных;

Базовые таблицы– совокупность реляционных таблиц, представляющих все сущности, входящие в инфологическую модель.

– даталогическое проектированиеили построение даталогиеской модели (концептуальной схемы) для реляционной БД.

Этапы проектирования.

1. Сбор и анализ информационных требований к БД.

На этом этапе должны быть определены все категории пользователей и собраны все атрибуты необходимых им данных.

2. Сбор информации об использовании данных.

На этом этапе должно быть проанализировано, каким образом будут использоваться данные, т.е. какие данные, каким процедурам обработки будут подвергаться и как часто.

Имеет смысл информацию об использовании данных разделить на два вида:

– Информация, связанная с основными производственными функциями.

– Информация, связанная с функциями управления.

3. Первоначальное структурирование собранной информации.

На этом этапе заканчивается анализ предметной области и этап предпроектирования, результатами которого должно быть:

– универсальное отношение

– домены всех атрибутов

– ограничения модели по отношению к предметной области

– декларация всех функциональных зависимостей.

4. Проектирование инфологической модели.

Инфологическое проектирование – процесс выделения и классификаций сущностей и связей по методологии К. Дейта.

5. Проектирование даталогической модели для РБД.

На этом этапе осуществляется проектирование совокупности базовых реляционных таблиц, представляющих все сущности, входящие в инфологическую модель.

Т.о. результатом логического проектирования РБД должно быть описание всей совокупности базовых таблиц на ЯОД и схема данных.

Для привязки даталогической модели к среде хранения используется модель данных физического уровня. Эта модель определяется используемыми запоминающими устройствами, способами физической организации данных в среде хранения

Если структуры таблиц отвечают поставленным требованиям, то можно вводить все данные. Затем можно создавать любые запросы, формы, отчеты, макросы и модули.

    продолжение
–PAGE_BREAK–1.5 Общие сведения о языке SQL

SQL(Structuret Query Language) – этомеждународныйстандартязыкареляционныхбазданных, принятыйANSI (American National Standart Institute) иISO (International Standart Organization)

SQL– декларативный, непроцедурный язык, предназначен для:

– создания РБД

– использования данных, хранящихся в РБД, в том числе и при работе в сети

– управления данными и пользователями РБД и обеспечения безопасности данных

– спецификации проектов баз данных (описания даталогической модели данных)

Этот язык содержит очень важные операторы, которые позволяют делать структуру БД динамической.

Все операторы языка в соответсвии с их назначением делятся на нескольно групп или подъязыков: язык определения структуры данных (DDL), язык манипулированиями данными (DML), язык запросов (DQL)

Оператор DDL.

ОператорCREATE

TABLE
.

Назначение оператора:

– Описание структуры новой таблицы (имена столбцов, тип данных)

– Спецификация ключей (PKи FK) и ограничение целостности для них

– Спецификация ограничений целостности для столбцов

– Спецификация ограничений целостности для всей таблицы

:=CREATETABLE

([,,…]

[];

:=

[]

:=NOTNULL|UNIQUE|PRIMARYKEY

:=

|

|

:=

([,,…])

:= UNIQUE|PRIMARYKEY

:=FOREIGNKEY(

[,,…])

REFERENCES

[]

:=ONUPDATE|ONDELETE

:=CASCADE|SET NULL|RESTRICT|SET DEFAULTNO ACTION

:=CHECK()

Оператор DQL

Оператор
SELECT

Это центральный и наиболее часто используемый оператор SQL, с его помощью формулируются и выполняются запросы на поиск и выдачу необходимой информации из БД.
Общая структура оператора

Виды запросов:

– однотабличные запросы

– многотабличные запросы

– составные запросы

– вложенные запросы или подзапросы

2. Описание проекта

    продолжение
–PAGE_BREAK–2.1 Анализ предметной области

Наименование учреждения в соответствии с Уставом: муниципальное образовательное учреждение дополнительного образования детей «Детско-юношеская спортивная школа №1».

Аккредитация: МОУ ДОД «Детско-юношеская спортивная школа №1» не имеет государственной аккредитации.

1. Общие сведения о состоянии развития МОУ ДОД «Детско-юношеская спортивная школа №1».

Детско-юношеская спортивная школа основана в 1947 году. Школа практикует опыт передачи наиболее талантливых учащихся в ШИСПОР г. Екатеринбурга. Ежегодно обучающиеся принимают участие во Всероссийских, областных, городских, районных соревнованиях и праздничных мероприятиях, конкурсах, фестивалях. Школа, является центром методической и спортивно-массовой работы по физической культуре в городе.

Тренеры-преподаватели ДЮСШ №1 проводят спартакиады школьников, участвуют в проведении Олимпиады по физической культуре.

ДЮСШ №1 имеет положительный опыт сотрудничества с образовательными учреждениями г. Алапаевска, СДЮСШОР. Школа поддерживает связь с ВУЗами и профессиональными колледжами Свердловской области, сотрудничает с учреждениями культуры, СМИ, общественными организациями города.

Учебно-воспитательный процесс в ДЮСШ №1 осуществляется шестнадцатью квалифицированными педагогами, имеющими большой опыт и стаж педагогической работы. Средней возраста педколлектива составляет 41 год. 14 педагогов аттестовано (88%), из них:

63% на 1 квалификационную категорию,

25% на 2 квалификационную категорию.

Таким образом, уровень квалификации педагогических и руководящих кадров достаточен для успешного решения стоящих перед ДЮСШ задач.

В ДЮСШ №1 обучается 587 человек, 26,7% от общего количества учащихся из неполных, многодетных, малообеспеченных семей и опекаемых детей.

За 3 года было подготовлено 452 человека, выполнивших юношеский разряд, 204 чел. – взрослый разряд, 5 чел. – КМС и 2 чел. – МС по спортивной гимнастике, легкой атлетике, волейболу.

В течение 3-х лет учащиеся ДЮСШ приняли участие в:

– 16-ти Всероссийских соревнованиях (82 чел.)

– 49-ти областных соревнованиях (384 чел.)

– 85-ти городских и районных соревнованиях (1128 чел.)

– 48-ми внутришкольных соревнованиях (918 чел.).

Подготовлено 132 победителя и призера Всероссийских и областных соревнований, 694 чел. – победителей и призеров городских и районных соревнований, 44 чел. – победителей городских фестивалей Детского творчества. Сборная девушек по волейболу является победителем и призером областных соревнований 2001, 2002, 2003 гг.; сборная юношей по волейболу – 2002, 2003 гг. Это свидетельствует о том, что образовательное учреждение работает результативно.

Административное управление обеспечивает оперативное управление образовательным процессом и реализует основные управленческие функции: анализ, планирование, организационно-содержательную деятельность, организацию контроля, самоконтроля, регулирование деятельности педагогического коллектива, осуществление мотивации.

Административно-управленческая работы школы обеспечивается следующим кадровым составом:

– директор,

– методист,

– заместитель директора по административно-хозяйственной части,

– старшие тренеры-преподаватели отделений.

Администрация школы осуществляет управление всеми структурными звеньями. Основной формой взаимодействия администрации и педагогического коллектива является обмен информацией, индивидуальные и групповые консультации, собеседования, совещания, сбор аналитической информации.

Администрация ДЮСШ №1 поощряет взаимоконтроль, способствует росту профессионального мастерства педагогов. В режиме самоконтроля в школе работают опытные специалисты, способные к объективной оценке своего труда.

Основные деловые процессы подлежащие автоматизации.

1. Зачисление учащихся

Входящие документы:

Заявление родителей, справка от врача

Исходящие документы:

Приказ о зачислении

2. Проведение соревнований.

Входящие документы:

положение о соревнованиях, календарь соревнований, приказ

Исходящие документы:

Отчет о соревнованиях (о выполнении разряда)

Приказ о присвоении разряда

Протокол (на каких именно соревнованиях получен разряд)

3. Выполнение нормативов.

Протокол (в нем фиксируются результаты сдачи нормативов)

4. Оздоровление учащихся.

Врач предоставляет данные о состоянии здоровья каждого учащегося по запросу тренера в свободной форме (средний уровень, высокий уровень,…). Тренер следит за данными в течении года и по запросу директора предоставляет отчет (в виде диаграммы) о том, как изменился уровень здоровья детей за определенный промежуток времени (то есть сколько было детей с низкими уровнем здоровья, высоким, и сколько стало, например, за год)

5. Аттестация тренеров

Входящие документы:

График прохождения аттестации, заявление на категорию

Исходящие документы:

Аттестационный лист (Документ по утвержденной категории)

6. Выпуск/отчисление учащихся.

Входящие документы:

Приказ об окончании

Исходящие документы:

Разрядная книжка.

Пользователи системы:

Методист. Может вносить, редактировать и удалять данные по всем таблицам. Так же генерирует отчеты

–                     по численности занимающихся за определенный период

–                     по характеристике тренерско-преподавательского состава за определенный год

–                     по списку подготовленных разрядников за определенный период

–                     по результатам участия учащихся МОУ ДОД ДЮСШ №1 в соревнованиях международного, всероссийского, регионального и областного уровней за определенный год

–                     о проведенных соревнованиях за определенный год

–                     о результатах деятельности МОУ ДОД ДЮСШ №1 за определенный год

–                     по качеству спортивной подготовки

– информационные справки о МОУ ДОД ДЮСШ №1 за определенный период

Директор. Имеет доступ ко всем таблицам. Генерирует и анализирует отчеты перечисленные выше.

Тренер. Просматривает данные по здоровью учащихся по соревнованиям, по аттестации тренеров. Генерирует и анализирует отчеты

–                     по результатам аттестации тренеров

–                     отчет по уровню физического здоровья учащихся

После сбора информационного требования было составлено универсальное отношение предметной области.
Универсальное отношение

Ограничения предметной области:

1. У сотрудника может быть только один адрес и один телефон, телефон может принимать NULL-значение

2. Номер страхового полиса уникален, у одного сотрудника может быть только один полис.

3. Паспортные данные уникальны, у сотрудника может быть только один паспорт

4. Сотрудник может совмещать несколько должностей.

5. Каждый тренер ведет занятия только в одном отделении.

6. Один учащийся в заданный момент времени занимается только в одном отделении и одной группе.

7. В одном городе может проходить несколько соревнований

8. У тренера может быть несколько званий

9. В один день может быть несколько соревнований только у разных отделений.

10. Одним приказом можно присвоить только массовые разряды группе учащихся, занимающихся у одного тренера

11. Некоторые из сотрудников могут быть экспертами.

12. В одной группе может вести занятия только один тренер

13. Один тренер может вести занятия в нескольких группах.

14. У одной семьи может быть несколько социальных статусов

15. Учащийся может быть отчислен несколько раз

16. Учащийся может быть зачислен несколько раз

17. У одного соревнования может быть несколько программ
    продолжение
–PAGE_BREAK–Далее была спроектирована и описана на ЯИМ инфологическая модель данных.
2.2 Проектирование инфологической модели

Справочники (стержни):

СПИСОК СОТРУДНИКОВ (таб_ном, Ф.И.О._сотр, дата_р_с, телефон_с, пасп_дан, адрес_с, дата_нач_р, дата_оконч_р, №полиса, пол, ставка, штат_сотр);

СПИСОК УЧАЩИХСЯ (ном_уч, Ф.И.О._уч, дата_р_уч, тел_уч, адрес_уч, Ф.И.О._м, Ф.И.О._п, пол);

СОЦ СТАТУС СЕМЬИ (код_стат, соц_стат);

ЛУЧШИЕ УЧАЩИЕСЯ (ном_уч, год_л_уч, лучший_уч) [список учащихся];

ОБРАЗОВАТЕЛЬНЫЕ УЧЕРЕЖДЕНИЯ (код_обр_уч, обр_уч);

ОТДЕЛЕНИЯ (код_отделения, отделение);

ПОЧЕТНЫЕ ЗВАНИЯ (Код_звания, звание);

ДОЛЖНОСТИ (код_долж, должность);

ГОРОДА (код_города, город);     

УРОВЕНЬ СОРЕВНОВАНИЙ (код_ур, ур_сор);

РАЗРЯД (код_разр, разряд);

УРОЕНЬ ЗДОРОВЬЯ (код_ур_з, уровень здор);

КАТЕГОРИИ (код_кат, категория);

ПРОГРАММА СОРЕВНОВАНИЙ (код_прогр_сор, прогр, сор);

ОБРАЗОВАНИЕ (код_образ, образование);

Обозначения:

СПИСОК ГРУПП (код_группы, группа, код_отделения,) [ОТДЕЛЕНИЯ];

ОБРАЗОВАНИЕ СОТРУДНИКОВ (таб_ном, код_образ) [СПИСОК СОТРУДНИКОВ] [ОБРАЗОВАНИЕ];

ЗАЧИСЛЕНИЕ УЧАЩИХСЯ (код_зач, ном_уч, дата_зач, №прик_зач) [СПИСОК УЧАЩИХСЯ];

ВЫПУСК УЧАЩИХСЯ (код_зач, дата_оконч, №прик_отч, №прик_разр_к) [СПИСОК УЧАЩИХСЯ];

СЕМЬЯ УЧАЩЕГОСЯ (ном_уч, код_стат) [СПИСОК УЧАЩИХСЯ] [СОЦ СТАТУС СЕМЬИ];

АТТЕСТАЦИЯ ТРЕНЕРОВ (таб_ном, код_эксп, код_заяв_кат, код_утв_кат, дата_атт_трен) [СПИСОК СОТРУДНИКОВ] [КАТЕГОРИИ];

СОРЕВНОВАНИЯ (Код_сор, код_города, ранг, код_ур, код_прогр_сор, фин_сор, дата_сор) [ГОРОДА] [УРОВЕНЬ СОРЕВНОВАНИЙ] [ПРОГРАММА СОРЕВНОВАНИЙ];

КОМПЛЕКТОВАНИЕ УЧ (код_группы, ном_уч) [СПИСОК ГРУПП] [СПИСОК УЧАЩИХСЯ];

РЕЗУЛЬТАТ ВЫСТУПЛЕНИЙ НА СОРЕВНОВАНИЯХ (ном_уч, код_сор, кол_бал, таб_ном) [СПИСОК УЧАЩИХСЯ] [СПИСОК СОТРУДНИКОВ] [СОРЕВНОВАНИЯ];

СПОРТСМЕНЫ – РАЗРЯДНИКИ (код_с_р, ном_уч, код_разр, дата_разр, таб_ном, ном_прик) [СПИСОК УЧАЩИХСЯ] [СПИСОК СОТРУДНИКОВ] [РАЗРЯД];

ОЗДОРОВЛЕНИЕ УЧАЩИХСЯ (ном_уч, дата_з, код_ур_з) [СПИСОК УЧАЩИХСЯ] [УРОВЕНЬ ЗДОРОВЬЯ];

ЗАСЛУЖЕННЫЕ РАБОТНИКИ (таб_ном, код_звания,) [СПИСОК СОТРУДНИКОВ] [ПОЧЕТНЫЕ ЗВАНИЯ];

ДОЛЖНОСТИ СОТРУДНИКОВ (таб_ном, код_долж, дата_зач_должн) [СПИСОК СОТРУДНИКОВ] [ДОЛЖНОСТИ];

Далее было проектирование базовых реляционных таблиц.
2.3 Проектирование даталогической модели

Описание таблиц на
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(«многодетная семья», «неполная семья», «опекаемые дети», «состоит на учете в ОППН», «малоимущая семья», «неблагополучная семья»)));

CREATETABLEОБРАЗОВАТЕЛЬНЫЕ УЧЕРЕЖДЕНИЯ

(код_обр_уч INTEGERPRIMARYKEY,

обр_уч 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(«первая», «вторая», «высшая»)));

CREATETABLEПРОГРАММА СОРЕВНОВАНИЙ

(код_прогр_сор INTEGERPRIMARYKEY,

прогр_сор TEXT

CHECK(прогр_сор IN(«произвольная», «общая»);

ОБРАЗОВАНИЕ СОТРУДНИКОВ (таб_ном, код_образ) [список сотрудников] [образование];

CREATETABLEОБРАЗОВАНИЕ СОТРУДНИКОВ

(таб_ном INTEGER

код_образINTEGER)

PRIMARYKEY(таб_ном, код_образ),

FOREINKEY(таб_ном) 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

ONUPDATECASCADE

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

FOREINKEY(код_обр_уч) 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

FOREINKEY(код_ур) REFERENCESУРОВЕНЬ СОРЕВНОВАНИЙ;

ON DELETE RESTRICT

ON UPDATE CASCADE

FOREINKEY(код_прогр_сор) REFERENCESПРОГРАММА СОРЕВНОВАНИЙ;

ON DELETE RESTRICT

ON UPDATE CASCADE

CREATE TABLE КОМПЛЕКТОВАНИЕУЧ

(код_группыINTEGER NOT NULL

ном_учINTEGER NOT NULL),

PRIMARYKEY(код_группы, ном_уч),

FOREIN KEY (ном_уч) REFERENCES СПИСОКУЧАЩИХСЯ,

ON DELETE RESTRICT

ON UPDATE CASCADE

FOREIN KEY (код_группы) REFERENCES СПИСОКГРУПП;

ON DELETE RESTRICT

ON UPDATE CASCADE

CREATETABLEРЕЗУЛЬТАТ ВЫСТУПЛЕНИЙ НА СОРЕВНОВАНИЯХ

(ном_уч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),

PRIMARYKEY(таб_ном, код_звания

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

    продолжение
–PAGE_BREAK–2.4 Проверка нормализации спроектированных таблиц

1. Таблицы, состоящие из 2х атрибутов находятся в НФБК.

Это таблицы:

СОЦ СТАТУС СЕМЬИ (код_стат, соц_стат);

ОБРАЗОВАТЕЛЬНЫЕ УЧЕРЕЖДЕНИЯ (код_обр_уч, обр_уч);

ОТДЕЛЕНИЯ (код_отделения, отделение);

ПОЧЕТНЫЕ ЗВАНИЯ (Код_звания, звание);

ДОЛЖНОСТИ (код_долж, должность);

ГОРОДА (код_города, город);

УРОВЕНЬ СОРЕВНОВАНИЙ (код_ур, ур_сор);

РАЗРЯД (код_разр, разряд);

УРОЕНЬ ЗДОРОВЬЯ (код_ур_з, уровень здор);

КАТЕГОРИИ (код_кат, категория);

ПРОГРАММА СОРЕВНОВАНИЙ (код_прогр_сор, прогр, сор);

ОБРАЗОВАНИЕ (код_образ, образование);

КОМПЛЕКТОВАНИЕ ТРЕНЕР (таб_ном, код_группы) [список сотрудников] [список групп];

КОМПЛЕКТОВАНИЕ УЧ (код_группы, ном_уч) [список групп] [список учащихся];

ОБРАЗОВАНИЕ СОТРУДНИКОВ (Ф.И.О._сотр, образование) [список сотрудников] [образование];

СЕМЬЯ УЧАЩЕГОСЯ (ном_уч, код_стат) [список учащихся] [Соц статус семьи];

ЗАСЛУЖЕННЫЕ РАБОТНИКИ (таб_ном, код_звания,) [список сотрудников] [почетные звания];

2. Все таблицы, имеющие несоставные PK, находятся во 2НФ. Проверим, нет ли в них транзитивных зависимостей.

СПИСОК СОТРУДНИКОВ (таб_ном, Ф.И.О._сотр, дата_р_с, телефон_с, пасп_дан, адрес_с, дата_нач_р, дата_оконч_р, №полиса, пол, ставка, штат_сотр);

СПИСОК УЧАЩИХСЯ (ном_уч, Ф.И.О._уч, дата_р_уч, тел_уч, адрес_уч, Ф.И.О._м, Ф.И.О._п, пол);

Очевидно, что таблицы СПИСОК СОТРУДНИКОВ иСПИСОК УЧАЩИХСЯнаходятся в НФБК.

СПИСОК ГРУПП (группа, отделениие) [отделения];

ФЗ: отделение àгруппа. Отделение – возможный ключ. Значит таблица находится в НФБК

СОРЕВНОВАНИЯ (город, ранг, ур_сор, прогр_сор, фин_сор, дата_сор) [города] [уровень соревнований] [программа соревнований];

ФЗ: (город, ур_сор, прогр_сор, дата_сор)àранг, (город, ур_сор, прогр_сор, дата_сор)àфин_сор. Но (город, ур_сор, прогр_сор, дата_сор) – возможный ключ. Значит все ФЗ в таблице сводятся к полной ФЗ от возможного ключа. Т.о. таблица СОРЕВНОВАНИЯнаходится в НФБК.

СПОРТСМЕНЫ – РАЗРЯДНИКИ (Ф.И.О._уч, разряд, дата_разр, Ф.И.О._сот, ном_прик) [список учащихся] [список сотрудников] [разряд];

ФЗ: (Ф.И.О._уч, разряд, дата_разр)àФ.И.О._сот, (Ф.И.О._уч, разряд, дата_разр)àном_прик. Но (Ф.И.О._уч, разряд, дата_разр) – возможный ключ. Значит все ФЗ в таблице сводятся к полной ФЗ от возможного ключа. Т.о. таблица СПОРТСМЕНЫ – РАЗРЯДНИКИнаходится в НФБК.

3. Таблицы с составными PK.

ЛУЧШИЕ УЧАЩИЕСЯ (ном_уч, год_л_уч, лучший_уч) [список учащихся];

ФЗ:(ном_уч, год_л_уч)àлучший учащийся.

(ном_уч, год_л_уч) – составной ключ. Таблица находится в НФБК.

ЗАЧИСЛЕНИЕ УЧАЩИХСЯ (ном_уч, дата_зач, №прик_зач) [список учащихся];

ФЗ: (ном_уч, дата_зач)à№прик_зач

(ном_уч, дата_зач) – составной ключ. Таблица находится в НФБК.

ВЫПУСК УЧАЩИХСЯ (ном_уч, дата_зач, дата_оконч, №прик_отч, №прик_разр_к) [список учащихся];

ФЗ: (ном_уч, дата_зач)àдата_оконч, (ном_уч, дата_зач)à№прик_отч, (ном_уч, дата_зач)à№прик_разр_к

(ном_уч, дата_зач) – возможный составной ключ. Таблица находится в НФБК.

АТТЕСТАЦИЯ ТРЕНЕРОВ (Ф.И.О._сотр, Ф.И.О._эксп, заяв_кат, утв_кат, дата_атт_трен) [список сотрудников] [категории];

ФЗ: (Ф.И.О._сотр, дата_атт_трен) àФ.И.О._эксп, (Ф.И.О._сотр, дата_атт_трен) àзаяв_кат, (Ф.И.О._сотр, дата_атт_трен) àутв_кат.

(Ф.И.О._сотр, дата_атт_трен)– возможный составной ключ. Таблица находится в НФБК.

РЕЗУЛЬТАТ ВЫСТУПЛЕНИЙ НА СОРЕВНОВАНИЯХ (Ф.И.О._уч, код_сор, кол_бал, Ф.И.О._трен) [список учащихся] [список сотрудников] [соревнования];

ФЗ: (Ф.И.О._уч, код_сор)àкол_бал, (Ф.И.О._уч, код_сор)àФ.И.О._трен.

(Ф.И.О._уч, код_сор)– возможный составной ключ. Таблица находится в НФБК.

СПОРТСМЕНЫ – РАЗРЯДНИКИ (Ф.И.О._уч, разряд, дата_разр, Ф.И.О._сот, ном_прик) [список учащихся] [список сотрудников] [разряд];

ФЗ: (Ф.И.О._уч, разряд, дата_разр)àФ.И.О._сот, (Ф.И.О._уч, разряд, дата_разр)àном_прик

(Ф.И.О._уч, разряд, дата_разр)–возможный составной ключ. Таблица находится в НФБК.

ОЗДОРОВЛЕНИЕ УЧАЩИХСЯ (Ф.И.О._уч, дата_з, ур_здор) [список учащихся] [уровень здоровья];

ФЗ: (Ф.И.О._уч, дата_з)àур_з.

Таблица находится в НФБК.

ДОЛЖНОСТИ СОТРУДНИКОВ (Ф.И.О._сот должность, дата_зач_должн) [список сотрудников] [должности];

ФЗ: (Ф.И.О._сот, должность)àдата_зач_должн.

Таблица находится в НФБК.

Схема данных

    продолжение
–PAGE_BREAK–2.4 Описание реализации 2.4.1 Обоснование выбора СУБД
Microsoft Access 2003 представляет собой СУБД которая предназначена для создания настольных приложений и приложений клиент / сервер, работающих под управлением Windows 2000 и XP.

1. Accessпредоставляет разработчикам средства, необходимые для создания развитых сложных баз данных, легко интегрирующихся со структурой данных предприятия, обеспечивая при этом прямую и обратную совместимость с существующими и новыми решениями. Access 2003 предоставляет средства для создания решений, интегрирующих и использующих преимущества Internet

2. Способы анализа данных пользователями с помощью динамических сводных таблиц и сводных диаграмм,

3. Страницы доступа к данным, позволяющие пользователям распространять приложения корпоративных баз данных в Internet.

4. Система поддерживает все средства для создания, введения и защиты от несанкционированного доступа к данным

5. Система позволяет импортировать и экспортировать файлы многих известных форматов

6. Одна из важных возможностей access– создание запросов

Таким образом, средств Access2003 достаточно для реализации моего проекта. Кроме того, в организации приобретение лицензии другой СУБД в ближайшее время не планируется.

2.4.2 Описание интерфейса
Для информационная система для поддержкиучебной деятельности ДЮСШ №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 ([Зачисление учащихся]. дата_зач)[введите дату начала] 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 ([вспомог запрос]. дата_оконч)

    продолжение
–PAGE_BREAK–