18.5.7. Многократное использование атрибута

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

Рисунок 18.16. Сотрудник1

Сотрудник1


Таблица 18.5. Экземпляры сущности Сотрудник1

Сотрудник#

 Фамилия

Адрес

Дата зачисления

или увольнения

El

Седов

Сурикова, 10

01.07.00

Е2

Куликов

Мира, 23

07.08.00


Атрибут «Дата зачисления или увольнения» (табл. 13) хранит информацию как о зачислении, так и об увольнении сотрудника. Если хранится только одно значение (например, 01.07.00), то невозможно понять, какая именно дата внесена. Решение проблемы в том, чтобы позволить отдельным атрибутам хранить отдельные факты.

Для приведения сущности «Сотрудник1» к 1НФ: разделим сложный атрибут «Дата зачисления или увольнения» на атомарные атрибуты – «Дата зачисления» и «Дата увольнения». Результат приведения сущности «Сотрудник1» к 1НФ в табл. 14.

Таблица 18.6. Таблица 5: Экземпляры сущности Сотрудник1

Сотрудник#

 Фамилия

Адрес

Дата

зачисления

Дата

увольнения

Е1

 Седов

Сурикова, 10

01.07.00

Е2

Куликов

Мира, 23

07.08.00

01.09.00