Помощь в учёбе, очень быстро...
Работаем вместе до победы

Операции над отношениями

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

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

Операции над отношениями (реферат, курсовая, диплом, контрольная)

Чтобы привести таблицу к первой нормальной форме (1НФ), нужно соблюсти два правила:

  • 1. Атомарность или неделимость. Каждая колонка должна содержать одно неделимое значение.
  • 2. Таблица не должна содержать повторяющихся колонок или групп данных.

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

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

Чтобы привести таблицу к первой нормальной форме, следует:

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

Для приведения таблиц ко второй нормальной форме (2НФ), приводимые таблицы должны быть уже в 1НФ. Нормализация должна проходить по порядку.

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

Чтобы привести базу ко второй нормальной форме, надо:

  • * Определить все столбцы, которые не находятся в прямой зависимости от первичного ключа этой таблицы.
  • * Создать необходимые поля в таблицах users и forums, выделить из существующих полей или создать из новых первичные ключи.
  • * Для каждой таблицы нужен свой первичный ключ
  • * Создать внешние ключи и обозначаем их отношения между таблицами. Конечным шагом нормализации до 2НФ будет являться выделение внешних ключей для связи с ассоциированными таблицами. Первичный ключ одной таблицы должен быть внешним ключом в другой.

Подсказки:

Другой способ приведения схемы к 2НФ — посмотреть на отношения между таблицами. Идеальный вариант — создать все отношения вида один-к-многим. Отношения вида многие-к-многим нуждаются в реструктуризации.

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

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

Чтобы привести базу к третьей нормальной форме, надо:

  • * Определить, в каких полях каких таблиц имеется взаимозависимость, т. е. поля, которые зависят больше друг от друга, чем от ряда в целом.
  • * Создать соответствующие таблицы. Если есть проблемный столбец в шаге 1, создать раздельные таблицы для него.
  • * Создать или выделить первичные ключи. Каждая таблица должна иметь первичный ключ.
  • * Создать необходимые внешние ключи, которые образуют любое из отношений.

В четвертой нормальной форме дополнительное правило — необходимо исключать многозначные зависимости. Другими словами, все строки таблицы должны быть независимыми друг от друга. Наличие какой-то строки X, не должно означать, что строка Y тоже где-то есть в этой таблице.

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