русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Проблемы проектирования


Дата добавления: 2013-12-23; просмотров: 2692; Нарушение авторских прав


Проектирование баз данных

 

 

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

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

Избыточное дублирование данных и аномалии. Различают простое (неизбыточное) и избыточное дублирование данных. Первое из них допускается в БД, а второе приводит к проблемам обработки данных.

Пример неизбыточного дублирования:

С_Т

Сотрудник Телефон
Иванов И.М.
Петров М.И.
Сидоров Н.Г.
Егоров В.В.

Рис. 6.1. Неизбыточное дублирование

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

Пример избыточного дублирования (избыточности):

С_Т_К

Сотрудник Телефон Комната
Иванов И.М.
Петров М.И.
Сидоров Н.Г.
Егоров В.В.

Рис. 6.2. Избыточное дублирование

С отношении С_Т_К имеется избыточное дублирование данных, т.к. номер телефона сотрудников Сидорова и Егорова можно узнать из кортежа со сведениями о Петрове. Выход из данной ситуации – это декомпозиция исходного отношения С_Т_К на два отношения вида:

Процедура декомпозиции отношения С_Т_К на два отношения С_К К_Т является основной процедурой нормализации отношений.



Избыточное дублирование данных создает проблемы при обработке кортежей отношения, названные Э. Коддом «аномалиями обновления отношения». Он показал, что для некоторых отношений проблемы возникают при попытке удаления, добавления или редактирования их кортежей.

С_К К_Т

Телефон Комната   Сотрудник Комната
  Иванов И.М.
  Петров М.И.
      Сидоров Н.Г.
      Егоров В.В.

Рис. 6.3. Исключение избыточного дублирования

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

Выделяют три вида аномалий: аномалии модификации, аномалии удаления и аномалии добавления.

Аномалии модификации проявляются в том, что изменение значения одного данного может повлечь за собой просмотр всей таблицы и изменение других записей таблицы (изменение номера телефона в к. 111 в отношении С_Т_К влечет изменение в трех кортежах).

Аномалии удаления состоят в том, что при удалении какого-либо данного из таблицы может пропасть и другая информация, которая не связана напрямую с удалением (удаление записи о сотруднике Иванове в табл. С_Т_К приводит к потере данных о номере телефона, установленного в к. 109).

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

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

Отношение Преподаватель содержит избыточное дублирование. Различают избыточность явную и неявную.

Явная избыточность – строки с данными о преподавателях повторяются несколько раз (атрибуты должность, оклад, стаж, надбавка, кафедра). Если, например, Иванов И.М. станет старшим преподавателем, то изменить надо данные в двух кортежах, иначе будет иметь место противоречие в данных. Это и есть аномалия редактирования, вызванная явной избыточностью данных в отношении.



<== предыдущая лекция | следующая лекция ==>
Необходимые условия для обучения дошкольников решению задач (6-ой, 7-ой гг жизни) | Зависимости между атрибутами. Основные виды: функциональные, транзитивные и многозначные.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.005 сек.