Дата логическое проектирование 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Дата логическое проектирование



 

Дата логическое проектирование реляционных баз данных называется так же логическим проектированием – это построение совокупности схем отношений, которое адекватно отображает объекты предметной области и семантические связи между ними.

Классическая технология логического проектирования РБД основана на теории нормализации отношений, разработанная американским математиком Е. Коддом. При этом проектирование это переход от более низких нормальных форм к более высоким.

Различают:

· первую нормальную форму – 1НФ

· вторую нормальную форму – 2НФ

· третью нормальную форму – 3НФ

· нормальную форму Бойса Конда - НФБК

· четвертую нормальную форму – 4НФ

· пятую нормальную форму – 5НФ

 

Нормализация отношений

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

Простым называется атрибут, если значения его атомарны, то есть неделимы.

Сложный атрибут может иметь значения, являющимися соединениями одного или разных доменов.

Отношение приведено к 1НФ если все его атрибуты простые.

Отношение R: сотрудник – 1НФ

Табельный номер ФИО Оклад Комната Телефон Дети
  имя.р возр.р.
  Иванов       Саша  
  Иванов       Женя  
  Иванов       Вася  
  Темин       Вова  
  Котов       Таня  
  Котов       Саша  

 

В данном случае атрибут дети – сложный. А по определению, в 1НФ не может содержаться сложных атрибутов.

Эту таблицу в таком виде нельзя использовать. Её нельзя ввести в компьютер, т.к. СУБД будет выдавать ошибку – первичный ключ будет повторяться, либо совсем отсутствовать.

Для приведения к первой нормальной форме, добавим к ключу одно из полей сложного атрибута.

Недостатки:

· сотрудник вообще не попадает в базу, если у него нет детей

· Дублирование информации

· Если у пользователя что то меняется, то требуется изменять несколько колонок

Неключевым атрибут - любой атрибут отношения не входящий в состав ни одного возможного ключа.

Функциональная зависимость – пусть X и Y два атрибута некоторого отношения. Говорят, что Y функционально зависит от Х, если в любой момент времени, каждому значению X соответствует только 1 значение Y.

Взаимно независимые атрибуты – атрибуты, которые функционально не зависят друг от друга.

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

Говорят, что неключевой атрибут функционально полно зависит от составного ключа, если он функционально зависит от всего ключа, а не от какой-то его части.

 

Имя ребенка

ФИО

Оклад

Комната

Телефон

Возраст ребенка

 

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

Возраст ребенка –> (Табл. № && имя р.)

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

В отношении Сотрудник 2НФ нарушено, так как только возраст ребенка имеет полную функциональную зависимость.

R1: сотрудник

Табельный номер ФИО Оклад Комната Телефон
  Иванов      
  Темин      
  Котов      

 

R2: дети

Табельный номер Имя ребенка Возраст ребенка
  Саша  
  Женя  
  Вася  
  Вова  
  Таня  
  Саша  

 

R1 и R2 во второй нормальной форме.

1. Но в них все же комната и телефон дублируются многократно.

2. Если в какой то комнате изменился телефон, то придется изменять множество строчек.

3. Если в какой то комнате в данный момент никто не сидит, то информация о комнате теряется.

 

Транзитивная зависимость – пусть X Y Z атрибуты одного отношения и между ними существует функциональная зависимость, такая, что

Тогда говорят, что Z транзитивно зависит от X.

Отношение находится в 3НФ, если оно находится в 2НФ и каждый не ключевой атрибут не транзитивно зависит от первичного ключа.

В нашем случае телефон зависит от табельного номера транзитивно.

R3: сотрудник

Табельный номер ФИО оклад Комната
  Иванов ---  
  Темин ---  
  Котов ---  

 

R4: аудитории

Комната Телефон
   
   

 

R3: сотрудник (табN, ФИО, оклад, комната)

R4: аудитории (Nk, телефон)

R2: (таблN, имя.р, возраст.р)

 

Спроектировать базу данных:

Студент (Номер факультета, название факультета, ФИО декана, телефон деканата, номер группы, специальность, ФИО старосты, количество студентов в группе, номер зачетки, стипендия)

 

назв. ф фио д тел.д Ном гр спец кол ст в гр фио стар стип ФИО ном зач
  ТКиИ Ромаз         Саб   Саб  
                  Бас  
                  Петров  
              Куй   Куев  
                     

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

Для приведения к первой нормальной форме добавим по одному полю из сложных атрибутов.

 

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

R1: факультет

название факультета фио декана телефон
       
       

 

R2: группы

N группы ФИО старосты специальность количество студентов
       
       

 

R3: студент

Номер зачетки ФИО стипендия
     
     
     

R4: Таблица связей

N факультета N Группы N зачетки
     

 

НФБК (нормальная форма Бойса-Кодда)

Отношение находится в НФБК в том и только том случае, если оно находится в 3НФ и каждый детерминант отношения является возможным ключом отношения.

 
 
 
 

 

R: Экзамены(Nз, Ид.N, Дисциплина, Дата, Оценка)

Идентификационный номер является детерминантом, но не является возможным ключом, а только частью возможного ключа –> нормальная форма Бойса-Кодда нарушена. Необходимо провести декомпозицию.

 

R1 R2
Номер зачетки Номер зачетки
Дисциплина Ид_номер
Дата  
Оценка  

Для R2: номер зачетки или идентификационный номер

R2 в НФБК так как идентификационный номер детерминант и возможный ключ.

 

4 нормальная форма

 

Определения

В отношения R(A,B,C) существует многозначная зависимость (multi valid dependence – MVD). R.A ->> R.B. в том и только том случае, если множество значений В соответствующих паре А и С, зависят только от А и не зависят от С.

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

Рассмотрим отношение R:Сессии(№ зачетки, № группы, дисциплина), в котором существуют 2 MVD зависимости.

, так как список студентов (N зачетки) зависит только от номера группы (№ группы) и не зависит от дисциплин, сдаваемых в сессию (дисциплина).

, так как список сдаваемых дисциплин зависит от номера группы (№ группы)

     
     
     
     

в методичке все есть.

 

 

Операции над РБК

 

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

2. Схемой отношения R называется конечное множество атрибутов

3. Каждому атрибуту ставится в соответствии множество значений – домен.

Операции:

Включение

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

 

Обновление

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

 

Удаление

Для выполнения надо знать имя отношения и идентификатор (ы) отношения (ий) подлежащих отношений.

 

Обработка отношений

На входе одно или несколько отношений, а на выходе новое отношение.

R1: секция волейбола   R2:Секция бокса  
N_зачетки ФИО N_зачетки ФИО
  Цветнев   Иванов
  Петров   Петров
  Сид   Трофимов

R1, R2 и R3 – односхемные отношения

1. Объединение

N_Зачетки ФИО
   
   
   
   
   
   

 

2. Пересечение

N_Зачетки ФИО
  Петров

 

3. Вычитание

N_Зачетки ФИО
   
 
   

 

4. Симметричная разность

N_Зачетки ФИО
   
 
   
   
   

5. Декартово произведение

R1 и R2 могут иметь разные схемы, а R3 включает в себя все атрибуты R1 и R2.

Пусть R1 секция волейбол, а R2 отношения экзамены ()

Дисциплина Дата Оценка
БД 10.06  
АЯП 15.06  
ТИ 25.06  

 

Результатом декартова произведения будет таблица:

N_зач ФИО Дисциплина Дата Оценка
  Иванов БД    
  Иванов АЯП    
  Иванов ТИ    
  Петров БД    
  Петров АЯП    
  Петров ТИ    
  Сидоров БД    
  Сидоров АЯП    
  Сидоров ТИ    

 

6. Выборка (горизонтальная подмножество).

На входе одно отношение, например R3 из пункта 5.

На выходе новое отношение, построенное по той же схеме, но содержит лишь те кортежи, которые удовлетворяют заданному условию.

7. Проекция (вертикальное подмножество).

На входе одно отношение, на выходе новое отношение, построенное, может быть, по другой схеме.

8. Соединение – декартово произведение, но с выбором по некоторому условию, например по совпадению полей.

9. Деление. Пусть – делимое, а

Тогда результата R3 определен на атрибутах R1, которых нет среди атрибутов R2.

Пусть делимое это R3 из пункта 5, а делитель.

 

 



Поделиться:


Последнее изменение этой страницы: 2016-04-19; просмотров: 304; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.104.238 (0.041 с.)