Помощь в написании студенческих работ
Антистрессовый сервис

Разработка базы данных «Прекрасные места Алтая»

РефератПомощь в написанииУзнать стоимостьмоей работы

Таблица находится во второй нормальной форме, так как она находится в первой нормальной форме, и при этом любой её атрибут, который не входит в состав первичного ключа, функционально полно зависит от первичного ключа. Теперь необходимо выявить транзитивные зависимости, чтобы привести отношения к 3НФ. В качестве приложения, разрабатываем сайт. В главной странице будет содержаться ссылки… Читать ещё >

Разработка базы данных «Прекрасные места Алтая» (реферат, курсовая, диплом, контрольная)

Постановка задачи, построение моделей

Требуется разработать проект базы данных для хранения информации о прекрасных местах Алтая. Эта база для туристов даст возможность посмотреть и помочь выбрать, куда ему следует поехать, чтоб отдохнуть.

Созданная база данных обладает следующими функциями:

  • — заносить информацию в базу данных;
  • — поддерживать целостность данных;
  • — контроль вводимых данных;
  • -показать итог выполнения запросов БД;

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

Входной информацией у нас будет: природные объекты, например водопады, озера и т. п. все данные должны соответствовать параметрам, по которым мы можем отдельно сгруппировать водопады, озера и т. д.

Выходная информация — отчеты.

  • — в каком конкретном районе, какие природные объекты находятся;
  • — какой-либо природный объект и его кратное описание;
  • — какой-либо природный объект и его параметры;

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

Клиент обращается в туристическое агентство. Клиент запрашивает конкретную информацию, к примеру, скажем, какие озера есть в N районе, администратор обращается в базу и предоставляет его клиенту. Но можно и показать данный запрос на сайте, ссылаясь на базу. Также клиент может сам выйти на сайт и посмотреть нужную информацию.

На основе данных миграции населения можно понять, в какие районы больше приезжают туристов, и проанализировать районы, чтобы выделить природные объекты, которые привлекают туристов. Прежде всего, это водопады, озера, пещеры, ледники и так далее. Но в нашей базе, мы будем рассматривать прекрасные места, относительно района и их расположения На основании проведенного анализа можно выделить следующие сущности: «Водопады», «Озера», «Ледники», «Пещеры» и «Районы».

Сущность «Районы» необходима для хранения и просмотра данных о районах и их описание. Содержит атрибуты: Номер района, Наименование района, общая площадь и административный центр.

Сущность «Водопады» необходима для хранения и просмотра данных о водопадах и их описание. Содержит атрибуты: Код водопада, Номер района, Название водопада, высота и краткое описание.

Сущность «Озеро» необходима для хранения и просмотра данных об озерах и их описание. Содержит поля: Код озера, номер района, Название озера, Глубина, Площадь и Краткое описание.

Сущность «Пещеры» — предназначено для хранения и просмотра данных о пещерах и их описание. Содержит поля: код перевала, номер района, название пещеры, протяженность, краткое описание.

Сущность «Ледники» необходима для хранения и просмотра сведений о ледниках и их описание. Содержит поля: код ледника, название ледника, административный район, протяженность, горная система.

При завершении построения инфологической модели переходим к проектированию даталогичской модели. Она будет строиться в той же программе MS Visio.

Для построения даталогической модели, устанавливаем типы данных для атрибутов.

Приводим отношения к нормальным формам.

Приведение к первой нормальной форме.

  • 1. Районы
  • — номер района — первичный ключ (PK)
  • — наименование района
  • — общая площадь
  • -административный центр

Номер района — первичный ключ (PK).

Наименование района, площадь, административный центр — имеет единственное значение.

  • 2. Водопады
  • — код водопада (PK)
  • — номер района (FK)
  • — наименование водопада
  • -высота
  • -краткое описание

Атрибуты «высота» и «краткое описание» — не делится на какие-либо значения.

  • 3. Озера
  • — код озера (PK)
  • — номер района (FK)
  • — название озера
  • — глубина
  • — площадь
  • — краткое описание

Атрибуты «Глубина», «Площадь», «Краткое описание» — по смыслу не делимы.

  • 4. Пещеры
  • -код пещеры (PK)
  • -номер района (FK)
  • — название пещеры
  • — протяженность
  • -краткое описание

Атрибуты «Название пещеры», «Протяженность», «Краткое описание» по смыслу не делимы.

  • 5. Ледники
  • -код ледника (PK)
  • — название ледника
  • — административный район (FK)
  • — протяженность
  • -горная система

Атрибуты «Протяженность», «Горная система» по смыслу не делимы.

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

Выделяем отношение «Район» с атрибутами: номер района (PK), наименование района, общая площадь, административный центр и краткое описание Выделяем отношение «Водопады» с атрибутами: код водопада (PK), номер района (FK), наименование водопада, высота, краткое описание. Каждый атрибут зависим от первичного ключа. Так как за каждым водопадом закреплен определенный код — наш первичный ключ. Название водопада не может быть первичным ключом, так как названия разные.

За каждым озером закреплены данные о площади озера, глубине озера и т. д. Каждый атрибут зависим от ключа.

За каждой пещерой закреплены данные о протяженности, описание. Каждый атрибут зависим от ключа.

За каждым ледником закреплены данные о протяженности ледника, принадлежности к горной системе и административному району.

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

Выделяем отношение «Район» с атрибутами: номер района (PK), наименование района, общая площадь, административный центр и краткое описание.

В данном случае выделилась одна транзитивная зависимость, от которой необходимо избавиться. В таком случае, мы выделяем отдельное отношение Наименование района — общая площадь.

Выделяем отношение «Водопады» с атрибутами: код водопада (PK), номер района (FK), наименование водопада, высота, краткое описание.

Между атрибутами отсутствует транзитивная зависимость. Выделяем отношение «Озера» с атрибутами: код озера (PK), номер района (FK), наименование озера, глубина, площадь, краткое описание.

Транзитивных зависимостей нет, поэтому все атрибуты будут в отношении в БД.

Выделяем отношение «Пещеры» с атрибутами: код пещеры (PK), номер района (FK), наименование пещеры, протяженность и краткое описание.

Между атрибутами отсутствует транзитивная зависимость.

Выделяем отношение «Ледники» с атрибутами: код водопада (PK), номер района (FK), наименование водопада, высота, краткое описание.

В данном случае отсутствует транзитивная зависимость.

Таким образом, таблицы приведены в 3НФ так как они находятся во 2НФ и отсутствуют транзитивные зависимости неключевых атрибутов от ключевых.

На основе выделенных нами отношений приступаем к разработке базы данных в MS Access. Для создания таблиц используем SQL-запрос и конструктор таблиц. Для построения таблицы будет использоваться оператор CREATE TABLE в SQL-запросе Создаем таблицу «Район». SQL-запрос: Сreate table Район (номер_района integer, наименование_района text, общая_площадь char, административный_центр text); Constant [номер_района] Primary key Nott null.

Затем созданную таблицу заполняем.

Создаем таблицу «Водопады». SQL-запрос: Сreate table Водопады (Код_водопада integer, Номер_района char (10), Название_водопада text (20), Высота_м char (10), краткое_описание text Constant [Код_водопада] Primary key Nott null).

Создаем таблицу «Озера». SQL-запрос: create table Озера (Код_озера integer, номер_района integer (10), Название_озера text (20), глубина_м char, площадь_квкм char, краткое_описание text Constant [Код_озера] Primary key Nott null).

Создаем таблицу «Пещеры». SQL-запрос: create table Пещеры (Код_пещеры integer, номер_района char, Название_пещеры text (20), потяженность char, краткое_описание text Constant [Код_пещеры] Primary key Nott null).

Создаем последнюю таблицу «Ледники» в самом конструкторе.

После создания всех таблиц строим схему данных.

Таким образом, процесс проектирования базы данных завершен. Заполняем все таблицы. Затем строим отчеты, которые будут открываться в веб-приложении.

На основе заполненных таблиц, составляем запросы:

1. Ледник и район. SELECT Район. наименование_района, Ледник. Название ледника].

FROM Район INNER JOIN Ледник ON Район. номер_района = Ледник. административный район];

2. Озеро и район SELECT Район. наименование_района, Озера. Название_озера.

FROM Район INNER JOIN Озера ON Район. номер_района = Озера. номер_района;

3. Водопады и район. SELECT Район. наименование_района, Водопады. Название_водопада.

FROM Район INNER JOIN Водопады ON Район. номер_района = Водопады. Номер_района;

4. Озера, пещеры, водопады в одном районе. SELECT Район. наименование_района, Водопады. Название_водопада, Пещеры. Название_пещеры, Озера. Название_озера.

FROM ((Район INNER JOIN Водопады ON Район. номер_района = Водопады. Номер_района) INNER JOIN Озера ON Район. номер_района = Озера. номер_района) INNER JOIN Пещеры ON Район. номер_района = Пещеры. номер_района;

5. Пещеры и район. SELECT Район. номер_района, Пещеры. Название_пещеры.

FROM Район INNER JOIN Пещеры ON Район. номер_района = Пещеры. номер_района;

В итоге у нас есть база данных. Теперь приступаем к разработке веб-приложения.

Разработка веб-приложения

В качестве приложения, разрабатываем сайт. В главной странице будет содержаться ссылки на страницы: «Озера», «Водопады», «Ледники», «Пещеры». Основу для страниц берем из нашей базы, то есть у нас будет отдельные страницы «Водопады», «Озера», «Районы», «Пещеры», «Ледники».

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

Показать весь текст
Заполнить форму текущей работой