Автор работы: Пользователь скрыл имя, 03 Августа 2013 в 09:21, курсовая работа
Проведем полный анализ предметной области «Красная Книга». Эта область может быть описана следующими основными объектами и действиями, представляющими интерес с точки зрения различных групп пользователей.
Выделим эти объекты: - Вид_Животного - Территория_Обитания
Эти объекты имеют следующие информационные характеристики (атрибуты): Объект «Вид_Животного» (ID_Животного, Вид_Животного, Род, Семейство, Дата_занесения, Численность_популяции, Обитает_Ли_На_Украине, Необходимые_Для_Спасения_Меры); Объект «Территория_Обитания» (ID_Животного, ID_Территории, Расположение, Площадь);
Анализ предметной области
-Первичные ключи
Описание концептуальной модели данных
Описание реляционной модели данных
-Спецификация полей-атрибутов отношения «Вид_Животного»
Способы реализации запросов и отчётов
Содержание
Анализ предметной области
-Первичные ключи
Описание концептуальной модели данных
Описание реляционной модели данных
-Спецификация полей-атрибутов отношения «Вид_Животного»
Способы реализации запросов и отчётов
АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
Проведем полный анализ предметной области «Красная Книга». Эта область может быть описана следующими основными объектами и действиями, представляющими интерес с точки зрения различных групп пользователей.
Выделим эти объекты:
- Вид_Животного
- Территория_Обитания
Эти объекты имеют следующие информационные характеристики (атрибуты):
ЭТАПЫ ПРОЕКТИРОВАНИЯ БД
Первичный ключ – это атрибут или группа атрибутов, которые однозначно идентифицируют экземпляр объекта.
Обозначим первичные ключи для перечисленных ранее объектов:
Схема функциональных зависимостей:
Описание концептуальной модели данных
Концептуальная модель данных (КМД)– это модель используемой на предприятии информации, которая не зависит от любых физических аспектов представления этой информации (тип СУБД, используемые ЯП, тип вычислительной платформы).
На этапе создания КМД определяются типы сущностей, типы связей атрибутов, домены; создается модель «Сущность-связь» (Entity-Relationship), которая в основе содержит следующие базовые понятия:
Сущность – с ее помощью моделируется класс однотипных объектов. Имеет имя, уникальное в пределах модели. Предполагается, что существует много экземпляров данной сущности.
Атрибут – характеристика, определяющая свойства сущности.
Связь – определяет, как сущности взаимодействуют друг с другом. Может быть установлена между сущностью и другими сущностями, или между сущностью и ей же самой (рекурсивная связь).
Виды связей:
Между двумя сущностями может быть установлено любое количество связей с разными смысловыми нагрузками.
Любая связь может быть обязательной, если в данной связи должен участвовать каждый экземпляр сущности, или необязательной. Связь может быть обязательной с одной стороны и необязательной с другой.
Схема данных для предметной области «Красная Книга»
Описание реляционной модели данных
Реляционная модель данных (РМД) представляет БД в виде множества взаимосвязанных отношений, в том числе и иерархических.
Одно отношение в
каждой связи выступает как
Для поддержания связи в отношении должны быть включены специальные атрибуты. В родительском отношении это первичный ключ, а в подчиненном – набор атрибутов, соответствующий внешнему ключу.
Типы связей между объектами:
Спецификация полей-атрибутов отношения
«Вид_Животного»
Спецификация полей-атрибутов отношения
«Территория_Обитания»
СПОСОБЫ РЕАЛИЗАЦИИ ЗАПРОСОВ И ОТЧЕТОВ
Посредством языка SQL необходимо реализовать 14 запросов:
1. Параметрический запрос
2. Перекрестный запрос
3. Запрос-выборка, селекция по сложному условию на основе оператора конъюнкции AND
4. Запрос-выборка, селекция по сложному условию на основе оператора дизъюнкции OR
5. Запрос-выборка, селекция по сложному условию на основе оператора BETWEEN…AND
6. Запрос-выборка, селекция по сложному условию на основе оператора LIKE
7. Запрос-выборка, селекция по сложному условию на основе оператора IN
8. Запрос-выборка, содержащий вычисляемое поле
9. Запрос-выборка с сортировкой по 2-3 полям
10. Запрос-выборка с группировкой данных и вычислением статистических функций
11.Запрос на обновление
12.Запрос на добавление
13.Запрос на удаление
14.Запрос на создание таблицы
Запрос 1. Вывести информацию о Животном по Виду
SELECT Вид_Животного.ID_Животного, Вид_Животного.Вид_Животного, Вид_Животного.Род,
Вид_Животного.Семейство, Вид_Животного.Дата_занесения,
Вид_Животного.Численность_
FROM Вид_Животного
WHERE (((Вид_Животного.Вид_
Запрос 2. Итоговое значение численности популяции по кварталам
TRANSFORM Avg(Вид_Животного.Численность_
SELECT Вид_Животного.ID_Животного,
Вид_Животного.Вид_Животного, Avg(Вид_Животного.Численность_
FROM Вид_Животного
GROUP BY Вид_Животного.ID_Животного, Вид_Животного.Вид_Животного
PIVOT "Кв" & Format([Дата_занесения],"q");
Запрос 3. Список животных, численность популяции которых больше или равно 20 и менее 30000
SELECT Вид_Животного.ID_Животного,
Вид_Животного.Вид_Животного,
FROM Вид_Животного
WHERE (((Вид_Животного.Численность_
Запрос 4. Список животных, которые располагаются на территории Приморского края и Забайкалья
SELECT Территория_Обитания.ID_
FROM Территория_Обитания
WHERE (((Территория_Обитания.
Запрос 5. Список территорий с площадью между 100 и 2000
SELECT Территория_Обитания.ID_
FROM Территория_Обитания
WHERE (((Территория_Обитания.
Запрос 6. Список животных, обитающих на Украине
SELECT Вид_Животного.ID_Животного,
Вид_Животного.Вид_Животного,
FROM Вид_Животного
WHERE (((Вид_Животного.Обитает_Ли_
Запрос 7. Список животных, обитающих на территории Приморского края или Иркутской области
SELECT Территория_Обитания.ID_
FROM Территория_Обитания
WHERE (((Территория_Обитания.
Запрос 8. Список животных, занесенных в Красную Книгу в 1 или 3 квартале
SELECT Вид_Животного.ID_Животного,
Вид_Животного.Вид_Животного,
FROM Вид_Животного
WHERE (((DatePart("q",[Дата_
GROUP BY Вид_Животного.ID_Животного,
Вид_Животного.Вид_Животного, Вид_Животного.Род, Вид_Животного.Семейство,
Вид_Животного.Дата_занесения, Вид_Животного.Численность_
Запрос 9. Животные, занесенные в книгу раньше всех и максимальной численностью популяции
SELECT Вид_Животного.ID_Животного,
Вид_Животного.Вид_Животного,
FROM Вид_Животного
ORDER BY Вид_Животного.Дата_занесения,
Вид_Животного.Численность_
Заказ 10. Количество животных и максимальная популяция, из этих животных
SELECT Count(Вид_Животного.ID_
FROM Вид_Животного;
Заказ 11. Заменить численность в таблице с 50000 на 53000
UPDATE Добавить_В_Книгу SET Добавить_В_Книгу.Численность = "53000"
WHERE (((Добавить_В_Книгу.
Запрос 12. Добавляем запись в таблицу «Добавить_В_Книгу».
INSERT INTO Добавить_В_Книгу ( ID_Животного, Род, Семейство, Численность )
SELECT Добавлять.ID_Животного,
FROM Добавлять;
Запрос 13. Удаляем запись по номером 18
DELETE Добавлять.ID_Животного
FROM Добавлять
WHERE (((Добавлять.ID_Животного)=18)
Запрос 14. Создаем таблицу «Добавить_В_Книгу»
create table Добавить_В_Книгу (
ID_Животного INTEGER,
Род CHAR(20) NOT NULL,
Семейство CHAR(50),
Численность CHAR(10),
PRIMARY KEY (ID_Животного))