Вторник, 16.07.2024, 05:09
Ш  К  О  Л  А     П  И  Ф  А  Г  О  Р  А
      Предмет математики настолько серьезен, что нужно
не упускать случая, сделать его немного занимательным".
                                                                              Блез Паскаль
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
ПАМЯТКИ ПО МАТЕМАТИКЕ   ВЕЛИКИЕ МАТЕМАТИКИ   ТЕОРИЯ ЧИСЕЛ   МАТЕМАТИЧЕСКАЯ ЛОГИКА
УРОКИ МАТЕМАТИКИ В ШКОЛЕ
МАТЕМАТИЧЕСКАЯ КЛАДОВАЯ
В МИРЕ ЗАДАЧ
ЕГЭ ПО МАТЕМАТИКЕ
МАТЕМАТИКА В НАЧАЛЬНОЙ ШКОЛЕ
ВАРИ, КОТЕЛОК!
УДИВИТЕЛЬНАЯ МАТЕМАТИКА
ВЫСШАЯ МАТЕМАТИКА
В МИРЕ ИНТЕРЕСНОГО
Категории раздела
КАРТОЧКИ ПО АЛГЕБРЕ [23]
КАРТОЧКИ ПО ГЕОМЕТРИИ [17]
МАТЕМАТИКА В НАЧАЛЬНОЙ ШКОЛЕ [84]
МАТЕМАТИКА В 4 КЛАССЕ [19]
МАТЕМАТИКА В 5 КЛАССЕ [114]
ВЕЛИКИЕ МАТЕМАТИКИ [79]
МАТЕМАТИЧЕСКАЯ ВСЕЛЕННАЯ [50]
МАТЕМАТИЧЕСКИЕ СКАЗКИ В КАРТИНКАХ [8]
КАРТОЧКИ ПО МАТЕМАТИКЕ [4]
ЗАНИМАТЕЛЬНАЯ МАТЕМАТИКА [188]
МАТЕМАТИЧЕСКИЕ ГОЛОВОЛОМКИ [265]
ДЕНЬГИ [23]
ЛИЧНОСТЬ В НАУКЕ [87]
БЕЙСИК ДЛЯ МЛАДШИХ ШКОЛЬНИКОВ [40]
ИНФОРМАТИКА В НАЧАЛЬНОЙ ШКОЛЕ [82]
ПАМЯТКИ ПО МАТЕМАТИКЕ [193]
ЗАБАВНЫЕ ЗАДАЧИ ЯКОВА ПЕРЕЛЬМАНА [20]
ВИКТОРИНЫ ПО ИНФОРМАТИКЕ [6]
БАЗЫ ДАННЫХ [74]
САМОУЧИТЕЛЬ "СЛЕПОЙ" ПЕЧАТИ НА КОМПЬЮТЕРЕ [20]
РАБОТАЕМ В Microsoft Office [18]
АППАРАТНЫЕ СРЕДСТВА ПЕРСОНАЛЬНОГО КОМПЬЮТЕРА [44]
ОСНОВЫ ИНФОРМАТИКИ ДЛЯ ШКОЛЬНИКОВ И СТУДЕНТОВ [77]
СОВЕТЫ ПО ОБУСТРОЙСТВУ КОМПЬЮТЕРА [72]
МАТЕМАТИКА В 6 КЛАССЕ [148]
МАТЕМАТИКА В 7 КЛАССЕ [85]
МАТЕМАТИКА В 8 КЛАССЕ [36]
МАТЕМАТИКА В 9 КЛАССЕ [153]
ЖИВОЙ УЧЕБНИК ГЕОМЕТРИИ [92]
УДИВИТЕЛЬНАЯ МАТЕМАТИКА [33]
ВЕЛИКАЯ ТЕОРЕМА ФЕРМА [45]
МАТЕМАТИКА В 11 КЛАССЕ [41]
КОНТРОЛЬНЫЕ РАБОТЫ [31]
ЗАНИМАТЕЛЬНЫЕ ЗАДАЧИ ПО ИНФОРМАТИКЕ ДЛЯ 5-6 КЛАССОВ [17]
ОБУЧАЮЩИЕ РАБОТЫ ПО ГЕОМЕТРИИ. 7 КЛАСС [19]
Главная » Статьи » БАЗЫ ДАННЫХ

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

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

Составные атрибуты, в отличие от простых, – это атрибуты, составленные из нескольких простых атрибутов.

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

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

Рассмотрим следующую таблицу, представляющую отношение:


Здесь атрибут «Телефон» – простой, однозначный, а атрибут «Адрес» – простой, но многозначный.

Теперь рассмотрим другую таблицу, с другими атрибутами:


В этом отношении, представленном таблицей, атрибут «Телефоны» – простой, но многозначный, а атрибут «Адреса» – и составной, и многозначный.

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


При нормализации схем базовых отношений программистами может быть использована одна из четырех наиболее распространенных видов нормальных форм: первая нормальная форма (1NF), вторая нормальная форма (2NF), третья нормальная форма (3NF) или нормальная форма Бойса – Кодда (NFBC). Поясним: сокращение NF – это аббревиатура от англоязычного словосочетания Normal Form. Формально, кроме вышеназванных, существуют и другие виды нормальных форм, но вышеназванные – одни из самых востребованных.

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


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

Для наглядного объяснения различий нормализованных и ненормализованных отношений рассмотрим пример.

Пусть, имеется ненормализованное отношение, со следующей схемой.

Итак, вариант 1 схемы отношения с заданным на ней простым первичным ключом:

Сотрудники (№ табельный, Фамилия Имя Отчество, Код должности, Телефоны, Дата приема или увольнения);

Primary key (№ табельный);

Перечислим, какие в этой схеме отношения имеются ошибки, т. е. назовем те признаки, которые и делают собственно эту схему ненормализованной:

1) атрибут «Фамилия Имя Отчество» является составным, т. е. составленным из разнородных элементов;

2) атрибут «Телефоны» является многозначным, т. е. его значением является множество значений;

3) атрибут «Дата приема или увольнения» не имеет однозначной семантики, т. е. в последнем случае не понятно, какая именно дата внесена.

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

Что же необходимо сделать для приведения этого отношения к нормальной форме?

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

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

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

Итак, вариант 2 отношения:

Сотрудники (№ табельный, Фамилия, Имя, Отчество, Код должности, Дата приема, Дата увольнения);

Primary key (№ табельный);


Телефоны (№ табельный, Телефон);

Primary key (№ табельный, Телефон);

Foreign key (№ табельный) references Сотрудники (№ табельный);

Итак, что мы видим? Составного атрибута «Фамилия Имя Отчество» больше в нашем отношении нет, вместо него присутствуют три простых атрибута «Фамилия», «Имя» и «Отчество», поэтому эта причина «ненормальности» отношения исключилась.

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

И, наконец, последняя причина того, что отношение «Сотрудники» не было приведено к нормальной форме, – это наличие многозначного атрибута «Телефоны». Чтобы избавиться от этого атрибута, и необходимо было провести декомпозицию всего отношения. Из исходного отношения «Сотрудники» в результате этой декомпозиции был исключен атрибут «Телефоны» вообще, но зато образовалось второе отношение – «Телефоны», в котором присутствуют два атрибута: «№ табельный» сотрудника и «Телефон», т. е. все атрибуты – опять-таки простые, условие принадлежности к первой нормальной форме выполняется. Эти атрибуты «№ табельный» и «Телефон» образуют составной первичный ключ отношения «Телефоны», а атрибут «№ табельный», в свою очередь, является внешним ключом, ссылающимся на одноименный атрибут отношения «Сотрудники», т. е. в отношении «Телефоны» атрибут первичного ключа «№ табельный» является одновременно внешним ключом, ссылающимся на первичный ключ отношения «Сотрудники». Таким образом, обеспечивается связь между этими двумя отношениями. Посредством этой связи можно по номеру табельному любого сотрудника без особого труда и затрат времени вывести весь список его телефонов, не прибегая к использованию составных атрибутов.

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


Категория: БАЗЫ ДАННЫХ | Добавил: admin (30.12.2013)
Просмотров: 906 | Теги: программирова, домены, лекции по информатике, информатика в школе, изучаем информатику, унарная операция, Базы данных, программирование для чайников | Рейтинг: 0.0/0
УЧИТЕЛЮ ИНФОРМАТИКИ
КОНСПЕКТЫ УРОКОВ
ВНЕКЛАССНЫЕ МЕРОПРИЯТИЯ ПО ИНФОРМАТИКЕ
ПОСОБИЯ И МЕТОДИЧКИ ДЛЯ УЧИТЕЛЯ ИНФОРМАТИКИ
ИЗ ОПЫТА РАБОТЫ УЧИТЕЛЯ ИНФОРМАТИКИ
ЗАДАНИЯ ШКОЛЬНОЙ ОЛИМПИАДЫ ПО ИНФОРМАТИКЕ
ИНФОРМАТИКА В ШКОЛЕ
ИНФОРМАТИКА В НАЧАЛЬНЫХ КЛАССАХ
ИНФОРМАТИКА В 3 КЛАССЕ
ИНФОРМАТИКА В 4 КЛАССЕ
КОНТРОЛЬНЫЕ РАБОТЫ ПО ИНФОРМАТИКЕ. 3 КЛАСС
КОНТРОЛЬНЫЕ РАБОТЫ ПО ИНФОРМАТИКЕ. 4 КЛАСС
ПРОГРАММИРОВАНИЕ ДЛЯ ДЕТЕЙ
СКАЗКА "ПРИКЛЮЧЕНИЯ ЭЛЕКТРОШИ"

ИГРОВЫЕ ТЕХНОЛОГИИ НА УРОКАХ ИНФОРМАТИКИ
ИГРОВЫЕ ЗАДАНИЯ ПО ИНФОРМАТИКЕ
ВИКТОРИНЫ ПО ИНФОРМАТИКЕ
КОМПЬЮТЕРНЫЕ ЧАСТУШКИ
ОБРАТНАЯ СВЯЗЬ
Поиск


Друзья сайта
  • Создать сайт
  • Все для веб-мастера
  • Программы для всех
  • Мир развлечений
  • Лучшие сайты Рунета
  • Кулинарные рецепты
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Форма входа


    Copyright MyCorp © 2024
    Яндекс.Метрика Top.Mail.Ru