Введение в системы БД (542480), страница 112
Текст из файла (страница 112)
° Для каждого сотрудника; личный номер сотрудника (уникальный), номер текущего проекта, номер офиса, номер телефона, а также название выполняемого задания вместе с датой и размером всех выплат, проведенных в качестве оплаты за выполнение данного задания. ° Для каждого проекта: номер проекта (уникальный) и его бюджет. ° Для каждого офиса; номер офиса (уникальный), плошадь в квадратных футах, номера (уникальные) всех установленных в нем телефонов. Составьте соответствующее множество переменных-отношений, необходимое лля представления этой информации. Обоснуйте любые предположения, которые будут сделаны вами в отношении существующих в них функциональных зависимостей. 11лй В базе данных системы учета заказов содержится информация о клиентах, деталях и заказах в соответствии с приведенным ниже описанием.
° Для каждого клиента: номер клиента (уникальный); адрес доставки (возможно, несколько для одного клиента); балансовый счет (сумма к оплате); максимальный размер кредита; скидка. ° Для каждого заказа: информация в заголовке: номер клиента, адрес доставки, дата выполнения заказа; детальные строки (несколько на один заказ): номер детали, заказанное количество. Глава 11. Дальнейшая нормализация: формы 1НФ, 2НФ, 3НФ и НФБК 453 ° Для каждой детали: номер детали (уникальный); заводы-изготовители; запас деталей на каждом заводе; минимальное количество деталей на складе для каждого завода; описание детали.
Для внутреннего учета также вводится величина "оставшееся количество", связанная с каждой детальной строкой каждого заказа. Исходно эта величина устанавливается равной заказанной количеству данной детали и последовательно уменьшается до нуля по мере частичного выполнения данной поставки.
Составьте проект соответствующей базы данных и, как и в предыдущем упражнении, обоснуйте любые сделанные предположения о сушествуюших функциональных зависимостях. 11.5. Предположим, что в упр. 11.4 лишь очень незначительная часть клиентов, например один процент или даже меньше, имеет более одного адреса доставки.
(Это обычная ситуация в реальной жизни, когда лишь незначительное число исключений — но достаточно важных — может не вписываться в предлагаемую общую структуру.) Можете ли вы в этом случае указать на какие-либо недостатки решения, которое было предложено вами для упр. !1.4? Какие усовершенствования целесообразно было бы внести для их устранения? 11.6. (Модифицированная версия уир. 10.13.) Переменная-отношение Т1ИЕТАВБЕ включает следуюшие атрибуты.
В День недели (1-5) Р Время в течение дня (1-8) С Номер аудитории Т Имя преподавателя Я Имя студента Название лекции Кортеж (Р:6, Р:р, С:с, Т:2, 1л1» будет допустимым для этой переменной- отношения тогда и только тогда, когда в момент (Вид, Р: р» некоторый студент в посешает лекцию 1, которая читается преподавателем 2 в аудитории с. Можно предположить, что каждая лекция продолжается только один академический час и имеет название, уникальное по отношению ко всем другим лекциям, читаемым на данной неделе. Сделайте структуру переменной-отношения Т1ИЕТАВАЕ более приемлемой.
11.7. (Модифицированная версия унр. 10.14.) Дана переменная-отношение ИАВВЕ с атрибутами ИАИЕ (уникальное имя), ВТЕЕЕТ, С1ТУ, ЕТАТЕ и 21Р. Причем каждому почтовому индексу соответствует только один город и штат, а каждой улице, городу и штату — только один почтовый индекс.
Находится ли переменная-отношение ИАВВЕ в НФБК, ЗНФ, 2НФ? Можно ли предложить улучшенный вариант этой переменной-отношения? 4д»4 Часть 111. Проектирование базы данных Список литературы Помимо приведенного здесь списка литературы, следует также обратить внимание на ссылки к главе 1О, особенно [10.4, 10.5] (т.е. ссылки на оригинальные статьи Кодда о 1НФ, 2НФ и ЗНФ). 11.1. Вегпзге!и Р.А.
БупгЪез!х!пй ТЪ!гд Хоцца! Роггп йе1аг!опз йош Рцпсбопа! Оерепдепс!ез 0 АСМ ТООБ. — ОесетЪег, 1976. — 1, № 4. В этой главе обсуждались методы декомпозиции больших переменных-отношений в меньшие. В статье Бернштейна рассматривается обратная задача создания больших переменных-отношений на основе меньших, сформулированная в несколько иной форме. В ней поставлена проблема синтеза переменных-отношений, которые находятся в ЗНФ, на основе заданных множеств атрибутов и соответствующих наборов ФЗ. Однако поскольку атрибуты и функциональные зависимости не имеют смысла вне контекста некоторой переменной-отношения, точнее и строже было бы прелставить примитивные конструкции как бинарные переменные-отношения, включаюшее ФЗ, а не просто как пару атрибутов и функциональную зависимость между ними.
Заиечалие. Точно так можно было бы рассмотреть заданное множество атрибутов и ФЗ как универсальную переменную-отношение (12.9), удовлетворяюшую заданному множеству зависимостей. В этом случае процесс "синтеза" можно заменить процессом декомпозиции этой универсальной переменной-отношения на проекции в 3НФ. Однако далее в нашем обсуждении будет использоваться интерпретация на основе синтеза. В такой ситуации процесс синтеза представляет собой процедуру создания л-арных переменных-отношений на основе бинарных переменных-отношений с заданным множеством ФЗ, связанных с этими переменными-отношениями, с учетом обязательного требования, чтобы все вновь созданные переменные-отношения находились в ЗНФ.
(Эта статья была опубликована еше до появления понятия НФБК.) В данной статье также представлены алгоритмы выполнения этой задачи. Одним из возражений относительно такого подхода (принятым Бернштейном), является то, что выполняемые на основании предложенного алгоритма синтеза манипуляции являются чисто синтаксическими и не имеют никакого отношения к семантике. Например, третья из приведенных ниже функциональных зависимостей может быть, а может и не быть избыточной (т.е, может подразумеваться первой и второй из них) в зависимости от смысла переменных-отношениИ К, Я и з.
К -э В (в К(К,В)] В -ь С (в В(В,С)) К вЂ” э С (в ЦК,С)) В качестве примера, в котором избыточность отсутствует, допустим, что атрибут К описывает личный номер сотрудника, атрибут  — номер офиса, атрибут С вЂ” номер отдела, отношение К содержит сведения об офисах, в которых работают сотрудники, отношение Я вЂ” об отделах, которым принадлежат офисы, а отношение Т вЂ” об отделах, в которых работают сотрудники. Рассмотрим случай, когда некоторый сотрудник работает в офисе не своего отдела. Согласно алгоритму синтеза два атрибута С всегда представляют одно и то же (при этом имена переменных- Глава 11. Дальнейшая нормализация: формы 1НФ, 2НФ, 3НФ и НФБК 455 11.2 11.3 11.4.
11.5. отношений фактически вообще не рассматриваются). Таким образом, предполагается наличие некоторого внешнего механизма (т.е. вмешательство человека), позволяющего предотвратить семантически неверные манипуляции. В нашем примере следовало бы еше при определении исходных ФЗ использовать для атрибутов из переменных-отношений Б и Т различные имена, например С1 и С2. Собд Е.Г.
Кесеп! 1пчезз!Еа1юпз ппо Ке!анапа! Оаза Вазе Бумешз 0 Ргос. 1НР Сопнгезз. — Бгос!гЬо!ш, Биедеп, 1974. Здесь приводится обзор других работ на данную тему, в частности дается "улучшенное определение третьей нормальной формы", под которой фактически подразумевается нормальная форма Бойса-Кодда. Среди других тем можно найти обсуждение представлений и обновления представлений, подъязыков данных, обмена данными и исследований необходимости (по состоянию на 1974 год).
Оа1е С.Ь А Ыоппа11га!1оп РгоЫеш 0 ТЬе Ке1апопа! Ь вЂ” 1992. — 4, № 2. В этой статье рассматривается простая задача нормализации, которая используется для представления некоторых идей в области составления проекта базы данных и явного объявления ограничений целостности. Задача сформулирована на основе простой базы данных некоторой авиакомпании с перечисленными ниже ФЗ, где приняты следующие обозначения: РЫ6НТ вЂ” название авиарейса, РЕБТ1МАТ10М— место назначения, НООН вЂ” время отправления в часах, РАТ вЂ” день недели, 6АТЕ— выход для посадки на самолет, Р1ЬОТ вЂ” пилот. ( РЫБНТ ) -э РЕБТТМАТЬОМ ( РЫБНТ ) -э НОНН ( РА1, РЫ6НТ ) -+ 6АТЕ ( РА1, Р116НТ ) -э Р1ЬОТ ( РА1, НОРЕ, 6Атн ) -л РЕБТЬМАТ1ОМ ( РА1, НООН, 6АТЕ ) — э РЫОНТ ( РАХ, НОШИ, БАТЕ ) -э Р1ЬОТ ( РА1, НООН, Р1ЬОТ ) -э РЕБТ1МАТ10М ( РА1, НОНН, Р1ЬОТ ) -+ РЫОНТ ( ОАХ, НООН, РТЬОт ) — э 6Атн Помимо всего прочего, этот пример — прекрасная иллюстрация того, что "приемлемый" проект базы данных вряд ли может быть создан только на основе принципов нормализации.
НеазЬ!.1, !)пассер1аЫе Гйе Орегайопз 1и а Ке!айопа! Оа1аЬазе 0 Ргос. !97! АСМ Б!ОГ!ОЕТ 'эчог)гзЬор оп Оага Оезспрйоп, Ассезз, апд Сов!го!. — Бап О!ено, СаИ., ЫочегпЬег, 1971. В работе дается определение ЗНФ, которое на самом деле является первым опубликованным определением НФБК. В ней также приводится доказательство теоремы, которая в разделе 11.2 была названа теоремой Хита. Следует отметить, что упомянутые в настоящей главе три этапа процедуры нормализации представляют собой практические воплощения этой теоремы.