Файл: Практикума 2 Предметная область Летопись острова СантаБелинда.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.10.2023
Просмотров: 227
Скачиваний: 4
СОДЕРЖАНИЕ
Приложение 2. Описание предметных областей, схем баз данных и запросов для лабораторного практикума
2.1. Предметная область «Летопись острова Санта-Белинда»
2.2. Предметная область «Скачки»
2.3. Предметная область «Хроника восхождений в альпинистском клубе»
2.4. Предметная область базы данных медицинского кооператива
2.5. Предметная область базы данных «Городская Дума»
2.6. Предметная область базы данных рыболовной фирмы
2.7. Предметная область база данных фирмы, проводящей аукционы
2.8. Предметная область база данных библиотеки
Предметная область базы данных для обслуживания
2.10. Предметная область базы данных для обслуживания склада
2.3. Предметная область «Хроника восхождений в альпинистском клубе»
Словесное описание предметной области. В базе данных должны записываться даты начала и завершения каждого восхождения, имена и адреса участвовавших в нем альпинистов, название и высота горы, страна и район, где эта гора расположена.
Разрабатываемая информационная система предназначена для руководства и членов альпинистского клуба.
Схема базы данных в нотации IDEF1X
Описание таблиц базы данных
№ п.п | Название | Идентификатор | Назначение | Тип связи | Атрибуты для связи |
1. | Альпинисты | Climbers | Список членов клуба | 1:М Альпинисты в группах | Ид. № альпиниста |
2. | Группы | Groups | Список групп | 1:М Альпинисты в группах | Ид. № группы |
1:М Восхождения | Ид. № группы | ||||
3. | Альпинисты в группах | Climbers-Group | Вхождения альпинистов в группы | М:1 Альпинисты | Ид. № альпиниста |
М:1 Группы | Ид. № группы | ||||
4. | Горы | Mountains | Список гор | 1:М Восхождения | Ид. № горы |
5. | Восхождения | Ascents | Список восхождений | М:1 Группы | Ид. № группы |
М:1 Горы | Ид. № горы |
Описание атрибутов таблицы Альпинисты
№ п/п | Название | Идентификатор | Тип | Размер | Ограничения | Знач. по умолчанию | Обязательное поле? | Признак ключа |
1. | Ид. № альпиниста | ID_Climber | N | 4 | 1÷9999 | – | + | PK |
2. | ФИО | FIO | С | 35 | Только буквы | – | + | – |
3. | Адрес | Address | С | 40 | – | – | + | – |
4. | Телефон | Phone | С | 15 | – | – | – | – |
5. | Звание | Rank | С | 20 | – | – | – | – |
6. | Пол | Sex | B | 1 | 0 или 1 | 1 | + | – |
Описание атрибутов таблицы Группы
№ п/п | Название | Идентификатор | Тип | Размер | Ограничения | Знач. по умолчанию | Обязательное поле? | Признак ключа |
1. | Ид. № группы | ID_Group | N | 2 | 1÷99 | – | + | PK |
2. | Количество | Amount | N | 2 | 1÷99 | – | + | – |
3. | ФИО руководителя | Leader | С | 20 | Только буквы | – | + | – |
Описание атрибутов таблицы Альпинисты в группах
№ п/п | Название | Идентификатор | Тип | Размер | Ограничения | Знач. по умолчанию | Обязательное поле? | Признак ключа |
1. | Ид. № альпиниста | ID_Climber | N | 4 | 1÷9999 | – | + | FK |
2. | Ид. № группы | ID_Group | N | 2 | 1÷99 | – | + | FK |
3. | Дата начала восхождения | Date_N | D | 8 | 01.01.1980÷01.01.2010 | – | + | – |
4. | Дата окончания восхождения | Date_N | D | 8 | 01.01.1980÷01.01.2010 | – | + | – |
Описание атрибутов таблицы Горы
№ п/п | Название | Идентификатор | Тип | Размер | Ограничения | Знач. по умолчанию | Обязательное поле? | Признак ключа |
1. | Ид. № горы | ID_ moun-tain | N | 3 | 1÷999 | – | + | PK |
2. | Название | Name | С | 40 | Только буквы | – | + | АК |
3. | Высота | Height | R | 7,2 | 0÷9999 | – | + | – |
4. | Страна | Country | С | 20 | Только буквы | Россия | + | – |
5. | Район | Region | С | 20 | Только буквы | – | – | – |
Описание атрибутов таблицы Восхождения
№ п/п | Название | Идентификатор | Тип | Размер | Ограничения | Знач. по умолчанию | Обязательное поле? | Признак ключа |
1. | Ид. № группы | ID_Group | N | 2 | 1÷99 | – | + | FK |
2. | Ид. № горы | ID_ moun-tain | N | 3 | 1÷999 | – | + | FK |
3. | Дата восхождения | Date_A | D | 8 | 01.01.1980÷01.01.2010 | – | + | PK |
4. | Успешное? | Successful | B | 1 | 0 или 1 | 1 | + | – |
5. | Длительность | Duration | N | 2 | 1÷99 | – | – | – |
6. | Количество покоривших гору | Amount | N | 2 | 1÷99 | – | – | – |
Запросы на выборку данных
-
Выдать список всех альпинистов, имеющих звание мастер спорта, их фамилии, адреса и телефоны. Список упорядочить по фамилии. -
Для каждого альпиниста выдать список групп, в которые он входил, ФИО руководителя группы, период вхождения. -
Предоставить информацию о том, сколько альпинистов побывало на каждой горе. Список отсортировать в алфавитном порядке по названию вершин. -
Показать список восхождений (групп), которые осуществлялись в указанный пользователем период времени. Для каждой группы показать ее состав. -
Выдать список всех альпинистов, осуществивших восхождение на горы заданной страны.
Представления
-
Создать представление, в котором для каждой горы хранились бы все восхождения, FKлючая дату восхождения, количество дошедших до вершины, ФИО руководителя. -
Создать представление, в котором для каждой группы хранить список входящих в нее в разное время альпинистов с их характеристиками.
Хранимые процедуры
-
Написать хранимую процедуру, которая при добавлении нового восхождения проверяет, не превышает ли длительность восхождения период пребывания каждого альпиниста в этой группе. -
Написать хранимую процедуру перехода альпиниста из одной группы в другую.
Триггеры
-
При удалении альпиниста проверять, остались ли в группах, в которые он входил, еще альпинисты. Если нет, то удалить и группы. -
При изменении звания альпиниста проверять, не ниже ли оно предыдущего, что недопустимо. -
При добавлении нового альпиниста в группу необходимо проверять, не превысило ли число альпинистов в группе некоторую заданную границу.