Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БазыДанных / Задания и пример оформления контрольной работы.doc
Скачиваний:
69
Добавлен:
14.04.2015
Размер:
143.87 Кб
Скачать

2. Проектирование структуры базы данных.

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

(Формальное описание функциональных зависимостей)

На основании рассмотренных требований к БД (раздел 1.2) формализуем ограничения на данные в виде функциональных зависимостей.

  1. Тема Название раздела

  2. WWW адрес Название сайта или статьи

  3. ФИО пользователя Место работы, Должность

  4. ФИО пользователя, WWW адрес Тема

Используя заданные функциональные зависимости, приведем структуру БД к третьей нормальной форме. Согласно теории реляционных баз данных [1,2] схема данных соответствующая третьей нормальной форме позволяет более эффективно решать задачи накопления и обработки информации, что в целом повышает эффективность функционирования информационной системы.

2.2. Разработка структуры базы данных.

(Описать этапы приведения структуры БД к третьей нормальной форме)

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

Очевидно, что представленный набор атрибутов (рисунок 1) соответствует первой нормальной форме (1НФ). Воспользуемся определением полной функциональной зависимости [1, 2] и построим вторую нормальную форму (2НФ).

Среди заданных функциональных зависимостей неполными являются зависимости WWW адрес Название сайта или статьи,ФИО пользователя Место работы, Должность. Для построения 2НФ ее необходимо вынести их в отдельные таблицу “Пользователь” и “Адрес”. Таким образом, БД будет иметь вид представленный на рисунке 2(подчеркнутые поля – первичный ключ).

Адрес”“Учет”“Пользователь”

WWW адрес

1

Название раздела

1

Фамилия

Название сайта или статьи

Тема

1

Имя

WWWадрес

 1

Отчество

Фамилия

Место работы

Имя

Должность

Отчество

Рисунок 2. Структура БД в 2НФ.

При этом функциональные зависимости будут соответствовать таблицам, следующим образом:

1. таблицы “Адрес”соответствуют функциональные зависимости

  • WWW адрес Название сайта или статьи.

2. таблицы “Учет”соответствуют функциональные зависимости

  • Тема Название раздела;

  • ФИО пользователя, WWW адрес Тема.

3. таблицы “Пользователь”соответствуют функциональные зависимости

  • ФИО пользователя Место работы, Должность.

Для дальнейшей нормализации необходимо исключить из множества транзитивные зависимости [1, 2]. Среди множества зависимостей таблицы “Учет” можно выделить зависимость “Тема Название раздела”, в которой атрибут“Название раздела”транзитивно зависит от атрибутов“ФИО пользователя”иWWW адрес”. Таким образом, для построения 3НФ необходимо вынести эту зависимость в отдельную таблицу “Тема”. При этом БД будет иметь структуру представленную на рисунке 3.

Тема”

Название раздела

Тема


1

Адрес”“Пользователь”

WWW адрес

1

Учет”

1

Фамилия

Название сайта или статьи

Тема

1

Имя

WWW адрес

 1

Отчество

Фамилия

Место работы

Имя

Должность

Отчество

Рисунок 3. Структура БД в 3НФ.

Функциональные зависимости будут соответствовать таблицам, следующим образом:

1. таблицы “Тема”соответствуют функциональные зависимости

  • Тема Название раздела.

2. таблицы “Адрес”соответствуют функциональные зависимости

  • WWW адрес Название сайта или статьи.

3. таблицы “Учет”соответствуют функциональные зависимости

  • ФИО пользователя, WWW адрес Тема.

4. таблицы “Пользователь”соответствуют функциональные зависимости

  • ФИО пользователя Место работы, Должность

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

Например, в таблице “Тема” функциональная зависимость “Тема Название раздела”определяет в качестве первичного ключа атрибут “Тема”. Связный атрибут таблицы “Учет” не является ключом, так как функциональная зависимость“ФИО пользователя, WWW адрес Тема”определяет в качестве ключа таблицы атрибуты “ФИО пользователя” и “WWW адрес”.

Для определения схемы БД зададим свойства атрибутов каждой таблицы (рисунок 4).

Таблица: Тема”

Имя атрибута

Свойства

Название раздела

  • Тип данных: Текстовый

  • Размер поля: 100

Тема

  • Тип данных: Текстовый

  • Размер поля: 100

  • Первичный ключ

Таблица Пользователь”

Имя атрибута

Свойства

Фамилия

  • Тип данных: Текстовый

  • Размер поля: 20

  • Первичный ключ

Имени

  • Тип данных: Текстовый

  • Размер поля: 20

  • Первичный ключ

Отчество

  • Тип данных: Текстовый

  • Размер поля: 20

  • Первичный ключ

Место работы

  • Тип данных: Текстовый

  • Размер поля: 50

Должность

  • Тип данных: Текстовый

  • Размер поля: 50

Таблица: “Учет

Имя атрибута

Свойства

Тема

  • Тип данных: Текстовый

  • Размер поля: 100

  • Внешний ключ для таблицы “Тема”

WWW адрес

  • Тип данных: Текстовый

  • Размер поля: 50

  • Первичный ключ

  • Внешний ключ для таблицы “Адрес”

Фамилия

  • Тип данных: Текстовый

  • Размер поля: 20

  • Первичный ключ

  • Внешний ключ для таблицы “Пользователь”

Имя

  • Тип данных: Текстовый

  • Размер поля: 20

  • Первичный ключ

  • Внешний ключ для таблицы “Пользователь”

Отчество

  • Тип данных: Текстовый

  • Размер поля: 20

  • Первичный ключ

  • Внешний ключ для таблицы “Пользователь”

Таблица “Адрес”

Имя атрибута

Свойства

Название сайта или статьи

  • Тип данных: Текстовый

  • Размер поля: 100

WWW адрес

  • Тип данных: Текстовый

  • Размер поля: 100

  • Первичный ключ

Рисунок 4. Свойства атрибутов БД

Заключение

(Кратко описать результаты выполнения контрольной работы)

В результате выполнения контрольной работы была разработанная структура БД WWW адресов, определенны свойства атрибутов и целостности данных. Полученная структура обеспечивает независимое хранение и ведение данных о пользователях, WWWадресах статей, разделах и т. д.

Предлагаемая структура обеспечивает исключения ряда аномалий, таких как избыточность, добавление и удаление различных данных независимо друг от друга. Это подтверждается тем, что структура разработана на основании алгоритма нормализации и приведена к 3НФ.

В качестве основных результатов контрольной работы можно выделить следующее:

  1. Проанализирована предметная область и сформулированы основные требования для разработки БД.

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

  3. Разработанная структура БД и приведена к 3НФ на основании заданных функциональных зависимостей и алгоритма нормализации.

  4. Определены основные свойства атрибутов для каждой таблицы БД.

  5. Предложенное описание и структура БД может быть использована для практической реализации в какой-либо системе учета абонентов сети Интернет.

Список использованных источников

  1. Дейт К. Введение в системы баз данных. М.: “Вильямс” 2001.

  2. Т. Коннолли, К. Бегг, А. Страчан Базы данных: проектирование, реализация и сопровождение. Терия и практика, 2-е изд.: Пер. с англ.: Уч. Пос. – М.: Издательский дом “Вильямс”, 2000.

  3. Зеленков Ю.А Введение в базы данных. www.vsma.ac.ru\~pharm\library\books\db\toc.html

  4. Пушников А.Ю. Введение в системы управления базами данных. www.citforum.ru\database\dblearn\index.shtml.htm