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



ЗНАЕТЕ ЛИ ВЫ?

Два правила целостности для рбд .

Поиск

1. Целостность по сущностям: не допускается, чтобы столбец первичного ключа какой-либо таблицы содержал неопределенное значение (null).

2. Целостность по ссылкам: если таблица Т2 содержит внешний ключ fk, соответствующий первичному ключу pk другой таблицы Т1, то каждое значение fk в Т2 должно:

    • либо быть равным значению pk для некоторой строки таблицы Т1,
    • либо быть неопределенным (иметь значение null).

 

На Рис.11 и Рис. 12. представлены две одинаковых БД для каждой из которых

ü первичным ключом является поле Код_Факультета таблицы Факультеты,

ü вешним ключом, поле Код_Факультета таблицы Студенты.

На Рис. 11. правила целостности соблюдены

На Рис. 12. правила целостности нарушены (pk имеет null и значения fk 7 и 13, не соответствуют ни одному значениям pk)

 

Факультеты Факультеты

Код_Факультета Факультет   Код_Факультета Факультет
  ЭФ     ЭФ
  ВМК     ВМК
  ФФ   null ФФ
  ФФ     ФФ
  ММ     ММ

Студенты Студенты

Код_Факультета Фамилия   Код_Факультета Фамилия
  Четин     Четин
  Яшин     Яшин
  Круглов     Круглов
  Самарин     Самарин
  Ракунов     Ракунов
  Певцов     Певцов
  Москвин     Москвин
  Романов     Романов
  Паршин     Паршин

 

Рис. 11. Рис.12.

 

Правила целостности соблюдены. Правила целостности нарушены.
Правила внешних ключей

Под целостностьюреляционной БД (в дальнейшем РБД) следует понимать выполнение одного из двух правил:

  1. Каскадное удаление
  2. Ограниченное удаление

Каскадное удаление: при удалении строки из таблицы Т1 удаляются также все строки из таблицы Т2, соответствующие строке из Т1 по внешнему ключу.

Ограниченное удаление: при попытке удаления строки из таблицы Т1 проверяется наличие в таблице Т2 строк, соответствующих строке из Т1 по внешнему ключу. Если такие строки в таблицах Т2 имеются, то удаление отвергается.

 

Пример каскадного удаления. Рис. 13

Пусть из таблицы «Факультеты», удаляется строка с кодом факультета 3 (pk) Это приводит к удалению из таблицы «Студенты», всех записей у которых внешний ключ равен 3 (fk)

Факультеты Факультеты

Код_Факультета Факультет   Код_Факультета Факультет
  ЭФ     ЭФ
  ВМК     ВМК
  ФФ     ФФ
  ФФ   ММ
  ММ      

Студенты Студенты

Код_Факультета Фамилия   Код_Факультета Фамилия
  Четин     Четин
  Яшин     Самарин
  Круглов     Ракунов
  Самарин     Певцов
  Ракунов     Москвин
  Певцов     Романов
  Москвин      
  Романов      
  Паршин      

 

Рис. 13.

Аналогично формулируются правила обновления данных в таблицах РБД.


Нормализация таблиц

 

Нормализация таблиц – это набор правил по составлению таблиц в целях устранения избыточности данных и приведения таблицы к третьей нормальной форме (3НФ). При практической разработке БД рассматривают 3 основные формы 1НФ, 2НФ, 3НФ.

 

Первая нормальная форма (1НФ)

Первая нормальная форма требует, чтобы каждое поле таблицы БД отвечало следующим требованиям:

  • неделимость,
  • не содержало повторяющихся групп.

 

Неделимость - означает, что содержимое поля не должно делиться на более мелкие значения. Например. Рис.14, Рис.15

 
 


ФИО   Фамилия Имя
Смирнов Петр   Смирнов Петр
Михайлов Сергей   Михайлов Сергей
Никольский Вадим   Никольский Вадим
Шадрин Николай   Шадрин Николай

 

Рис.14

 

 
 


Факультет_Кафедра   Факультет Кафедра
ВМК Программирование   ВМК Программирование
ММ Дискретная математика   ММ Дискретная математика

 

Рис.15

 

 

Повторяющимися называются поля, содержащие одинаковые по смыслу значения. Например. Таблица – «Экзаменационная ведомость» Рис.16

 
 


Экзаменационная ведомость Экзаменационная ведомость

Фамилия Физика История   Фамилия Предмет Оценка
Смирнов       Смирнов Физика  
        Смирнов История  

 

Рис.16.

 

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




Поделиться:


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

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