Лабораторная работа 1 по дисциплине Управление данными
Скачать 324.19 Kb.
|
Лабораторная работа 1 по дисциплине: «Управление данными» Вариант 27. Предметная область ИС: Заказы. Выполнила: студентка 3 курса Группы Б.ИСТ.ИСАУ.18.35 Акимова Алёна Юрьевна Принял: Полтавцев Анатолий Алексеевич Тверь 2021 Лабораторная работа № 1 Цель работы: преобразования базы данных к виду, отвечающему нормальным формам. Ход работы Первая нормальная форма (1NF) Таблица находится в первой нормальной форме, если каждый её атрибут атомарен и все строки различны. Под выражением "атрибут атомарен" понимается, что атрибут может содержать только одно значение. На рис. 1 показана таблица Клиент, приведенная к первой нормальной форме. Рис. 1. Таблица "Клиент", приведенная к первой нормальной форме Вторая нормальная форма (2NF). Отношение R находится во второй нормальной форме (2NF) в том и только в том случае, когда находится в 1NF, и каждый неключевой атрибут функционально полно зависит от каждого (в т.ч. первичного) ключа. Из определения второй нормальной формы следует, что быть в 1NF, и не быть в 2NF могут только таблицы с композитными первичными ключами. Если первичный ключ не составной, то таблица в 1NF автоматически находится и в 2NF. Предположим, таблица Заказ содержит информацию о заказе, причем информация содержится как непосредственно о заказе, так и о клиенте. Для приведения таблицы ко второй нормальной форме следует: выделить атрибуты, которые зависят только от части первичного ключа, создать новую таблицу; поместить атрибуты, зависящие от части ключа, в их собственную (новую) таблицу; установить идентифицирующую связь от прежней таблицы к новой (рис. 2.). Вторая нормальная форма позволяет избежать следующих аномалий при выполнении операций: Обновление (UPDATE). Имеет место дублирование данных о клиенте, если клиент делает несколько заказов. Если данные о клиенте изменяются, необходимо менять несколько записей (по числу сделанных заказов). Вставка (INSERT). Невозможно ввести данные о клиенте, если он в данный момент не сделал заказы. Удаление (DELETE). Если клиент временно прекращает делать заказы, данные о нем, теряются. На рис. 2. показана таблица Проект, приведенная ко второй нормальной форме. Рис. 2. Таблица "Заказ", приведенная ко второй нормальной форме Третья нормальная форма (3NF). Отношение R находится в третьей нормальной форме (3NF) в том и только в том случае, если находится в 2NF и никакой неключевой атрибут не зависит от другого неключевого атрибута (не должно быть взаимозависимости между неключевыми атрибутами). На рис. 2. таблица Заказ находится во второй нормальной форме (имеется только один атрибут первичного ключа, поэтому не может быть зависимости неключевых атрибутов от части ключа), но неключевой атрибут Цена зависит от другого неключевого атрибута – Название_продукта. Для приведения таблицы ко второй нормальной форме следует: создать новую таблицу и перенести в нее атрибуты с одной и той же зависимостью от неключевого атрибута; использовать атрибут(ы), определяющий эту зависимость, в качестве первичного ключа новой таблицы; установить неидентифицирующую связь от новой таблицы к старой (рис. 3). Рис. 3. Таблица "Заказ", приведенная к третьей нормальной форме В третьей нормальной форме каждый атрибут таблицы зависит от ключа, от всего ключа целиком и ни от чего другого, кроме как от ключа. Третья нормальная форма также позволяет избежать ряда аномалий: Обновление (UPDATE). Имеет место дублирование данных о цене, если продукт участвует в нескольких заказах. Если цена соответствующих продуктов меняется, необходимо менять несколько записей (по числу заказов данных продуктов). Вставка (INSERT). Невозможно ввести данные о цене продуктов, если в данный момент нет заказов по продукту. Удаление (DELETE). В случае удаления из таблицы заказ, с уникальным продуктом, данные о цене теряются. Вывод: преобразована база данных к виду, отвечающему нормальным формам. |