Реал. Практическая работа № 2 Нормализация реляционной БД, освоение пр. Практическая работа 2 Нормализация реляционной бд, освоение принципов проектирования бд
Скачать 329.52 Kb.
|
Практическая работа № 2 Нормализация реляционной БД, освоение принципов проектирования БД Цель работы выработать практические навыки моделирования предметной области и построения различных видов модели баз данных Нормализация, функциональные и многозначные зависимости Нормализация – это разбиение таблицы на две или более, обладающих лучшими свойствами при включении, изменении и удалении данных. Окончательная цель нормализации сводится к получению такого проекта базы данных, в котором каждый факт появляется лишь водном месте, те. исключена избыточность информации. Это делается не столько с целью экономии памяти, сколько для исключения возможной противоречивости хранимых данных. Каждая таблица в реляционной БД удовлетворяет условию, в соответствии с которым в позиции на пересечении каждой строки и столбца таблицы всегда находится единственное атомарное значение, и никогда не может быть множества таких значений. Любая таблица, удовлетворяющая этому условию, называется нормализованной. Фактически, ненормализованные таблицы, те. таблицы, содержащие повторяющиеся группы, даже не допускаются в реляционной БД. Всякая нормализованная таблица автоматически считается таблицей впервой нормальной форме, сокращенно 1НФ. Таким образом, строго говоря, "нормализованная" и "находящаяся в 1НФ" означают одно и тоже. Однако на практике термин "нормализованная" часто используется в более узком смысле – "полностью нормализованная, который означает, что в проекте не нарушаются никакие принципы нормализации. Теперь в дополнение к 1НФ можно определить дальнейшие уровни нормализации – вторую нормальную форму (2НФ), третью нормальную форму (3НФ) и т.д. По существу, таблица находится в 2НФ, если она находится в 1НФ и удовлетворяет, кроме того, некоторому дополнительному условию, суть которого будет рассмотрена ниже. Таблица находится в 3НФ, если она находится в 2НФ и, помимо этого, удовлетворяет еще другому дополнительному условию и т.д. Таким образом, каждая нормальная форма является в некотором смысле более ограниченной, но и более желательной, чем предшествующая. Это связано стем, что "я нормальная форма" не обладает некоторыми непривлекательными особенностями, свойственным "й нормальной форме. Общий смысл дополнительного условия, налагаемого на (ю нормальную форму по отношению к й нормальной форме, состоит в исключении этих непривлекательных особенностей. За время развития технологии проектирования реляционных БД были выделены следующие нормальные формы - первая нормальная форма (1NF); - вторая нормальная форма (2NF); - третья нормальная форма (3NF); - нормальная форма Бойса-Кодда (BCNF); - четвертая нормальная форма (4NF); - пятая нормальная форма, или нормальная форма проекции-соединения (5NF). Обычно на практике применение находят только первые три нормальные формы. Теория нормализации основывается на наличии той или иной зависимости между полями таблицы. Определены два вида таких зависимостей функциональные и многозначные. Определение. Функциональная зависимость. Поле В таблицы функционально зависит от поля А той же таблицы в томи только в том случае, когда в любой заданный момент времени для каждого из различных значений поля А обязательно существует только одно из различных значений поля В. Отметим, что здесь допускается, что поля Аи В могут быть составными. Другими словами, в отношении R атрибут Y функционально зависит от атрибута X в томи только в том случае, если каждому значению X соответствует одно значение Y. Схематично функциональную зависимость атрибута Y от атрибута X изображают гак R.X -> R.Y R(X -> Y). ФЗ(X -> Y) Пример 1. 1. В таблице Блюда (б.д. Пансион) поля Блюдо и В функционально зависят от ключа БЛ. 2. Таблица Поставщики вида Таблица 2.1. Поставщики Поставщик Статус Город Страна Адрес Телефон В таблице Поставщики поле Страна функционально зависит от составного ключа Поставщик, Город. Однако последняя зависимость не является функционально полной, так как Страна функционально зависит и отчасти ключа – поля Город. Отсюда определение Определение. Полная функциональная зависимость. Поле В находится в полной функциональной зависимости от составного поля А, если оно функционально зависит от Аи не зависит функционально от любого подмножества поля А. Пример нормализации Постановка задачи. Дано отношение. 1) определить первичный ключ отношения и все функциональные зависимости отношения 2) привести отношение к 3НФ, указать первичные и внешние ключи полученных отношений, построить схему "Таблица-Связь". R = {НаименованиеЭмитента, ТипЦБ, ДатаЭмиссии, НоминальнаяCтоимость}. Таблица 2.2. Эмитенты Наименование Эмитента ТипЦБ Дата Эмиссии Номинальная Стоимость ОАО ―КрАЗ‖ акция обыкновенная 23.06.1999 100 руб. ОАО ―КрАЗ‖ акция обыкновенная 23.06.1999 200 руб. ТОО Искра акция привилегирванная 20.06.1999 500 руб. ТОО Искра акция привилегированная 23.06.1999 500 руб. Решение 1. Функциональные зависимости <ДатаЭмиссии, НоминальнаяCтоимость> -> <НаименованиеЭмитента, ТипЦБ> ТипЦБ ->НаименованиеЭмитента Первичный ключ отношения R состоит из двух атрибутов <ДатаЭмиссии, НоминальнаяCтоимость>. Таким образом, существует функциональная зависимость между неключевыми атрибутами отношения R, те. отношение R не находится в 3НФ. 2. Приведение отношения R к 3НФ состоит в декомпозиции (разбиении отношения R на два отношения R1= {НаименованиеЭмитента, ТипЦБ}, где Функциональные зависимости ТипЦБ -> НаименованиеЭмитента, первичный ключ – атрибут ТипЦБ, R2={ТипЦБ, ДатаЭмиссии, НоминальнаяCтоимость}, Функциональные зависимости <ДатаЭмиссии, НоминальнаяCтоимость> -> ТипЦБ, составной первичный ключ <ДатаЭмиссии, НоминальнаяCтоимость>, внешний ключ ТипЦБ. 3. Схема "Таблица-Связь": Рисунок 2.1. Схема Таблица – связь Задание для практической работы Дан фрагмент отношения (таблицы. Предполагается, что функциональные зависимости, имеющиеся во фрагменте, распространяются на все отношение (таблицу. Для вашего варианта 1. Определить первичный ключ отношения и все функциональные зависимости отношения. 2. Привести отношение к 3НФ, указать первичные и внешние ключи полученных отношений, построить схему "Таблица - Связь. Индивидуальные задания к практической работе Вариант 1. Область Тип C 2 N Количество АСА С 27 6 Б ДБ Д 27 7 Вариант 2. Наименование Свойство Артикул Количество АСА ДБ С 27 9 Б Д 25 9 Вариант 3. Тип Характеристика Группа Количество АСА ДБ С 13 200 Б Д 13 100 Вариант 4. НаименованиеЭмитента ТипЦБ ДатаЭмиссии ОАО ―КрАЗ‖ акция привилегированная 20.06.1999 ОАО ―КрАЗ‖ акция обыкновенная 20.06.1999 ЗАО Агат акция привилегированная 23.06.1999 ТОО Искра акция привилегированная 20.06.1999 Вариант 5. НаименованиеВуза Команда Приз КрасГУ МатФак Торт КГТУ ЭконФак Арбуз СибГТУ МатФак Торт НГУ ЭконФак Бананы Вариант 6. НаименованиеВуза Адрес Команда КрасГУ Красноярск, пр-т Свободный МатФак КрасГУ Красноярск, пр-т Свободный ЭконФак КГТУ Красноярск, ул.Киренского,26 ЭконФак КГТУ эк. институт Красноярск, ул.Киренского,26 ФизФак НГУ Новосибирск, ул. Пирогова, 2 МатФак НГУ Новосибирск, ул. Пирогова, 2 ФизФак Вариант 7. НаименованиеВуза Команда Приз КрасГУ МатФак Торт КрасГУ ЭконФак Торт НГУ ФилФак Арбуз НГУ МатФак Бананы Вариант 8. НаименованиеЭмитента ТипЦБ ДатаЭмиссии ОАО ―КрАЗ‖ акция привилегированная 24.06.1999 ЗАО ―Сибириада‖ акция обыкновенная 25.06.1999 ТОО Искра акция привилегированная 23.06.1999 ЗАО Агат акция обыкновенная 25.06.1999 Вариант 9. Наименование Вуза Адрес Команда КрасГУ Красноярск, пр-т Свободный МатФак КрасГУ Красноярск, пр-т Свободный ЭконФак КГТУ Красноярск, ул.Киренского,26 ФизФак КГТУ эк. институт Красноярск, ул.Киренского,26 ЮрФак НГУ Новосибирск, ул. Пирогова, 2 ФилФак НГУ Новосибирск, ул. Пирогова, 2 БиоХим Вариант 10. НаименованиеЭмитента ТипЦБ ДатаЭмиссии ОАО ―КрАЗ‖ акция привилегированная 20.06.1999 ОАО ―КрАЗ‖ акция обыкновенная 23.06.1999 ЗАО Агат акция привилегированная 20.06.1999 ЗАО Агат акция привилегированная 24.06.1999 Вариант 11. P1 P2 Дата A D 2000 A E 2000 B D 2005 C D 2000 Вариант 12. A B C A1 B1 C1 A2 B2 C2 A3 B1 C1 A4 B2 C3 Вариант 13. A B C A1 B1 C1 A1 B1 C2 A2 B2 C2 A3 B2 C3 A4 B3 C1 A4 B3 C3 Вариант 14. A B C A1 B1 C1 A1 B2 C1 A2 B3 C2 A2 B1 C3 Вариант 15. A B C A1 B1 C1 A2 B2 C2 A3 B1 C3 A4 B2 C2 Вариант 16. A B C A1 B1 C1 A1 B1 C2 A2 B2 C3 A3 B2 C4 A4 B3 C5 A4 B3 C6 Вариант 17. A B C A1 B1 C1 A1 B2 C2 A2 B1 C1 A2 B1 C3 Вариант 18. P F Q 41 21 11 42 22 12 43 21 11 44 22 13 Вариант 19. C D E 71 61 51 71 61 52 72 62 52 73 62 53 74 63 51 74 63 53 Вариант 20. F G H App Beep8 Call7 App Beep2 Call7 Opp Beep3 Call2 Opp Beep8 Call3 Вариант 21 НаименованиеВуза Адрес Команда КрасГУ Красноярск, пр-т Свободный, 79 Первая КрасГУ Красноярск, пр-т Свободный, 79 Вторая КГТУ Красноярск, ул. Киренского, 26 Первая КГТУ Красноярск, ул. Киренского, 26 Вторая НГУ Новосибирск, ул. Пирогова, 2 Первая НГУ Новосибирск, ул. Пирогова, 2 Вторая Вариант 22. H 2 O Виртуальность C 2 N Масса Yes P 27 45 Yes P 27 91 No D 26 NULL No D 27 NULL Вариант 23. Количество Свойство Артикул Наименование 752 NP 2007 HDR 752 PN 2007 HDR 345 NP 2007 HDR 345 PN 2005 HDR Вариант 24. Тип Признак Месяц Век Второй Да 10 19 Второй Нет 10 19 Первый Да 10 20 Первый Нет 10 19 Вариант 25. НаименованиеЭмитента ТипЦБ ДатаЭмиссии ОАО ―Камаз‖ акция привилегированная 20.06.2010 ОАО ―КрАЗ‖ акция обыкновенная 23.06.2010 ЗАО Агат акция привилегированная 20.06.2010 ТОО Искра акция привилегированная 20.06.2010 Вариант 26. НаименованиеВуза Команда Приз ТГУ ФилФак Сист. блок ТПУ ЭконФак Ноутбук ТГПУ МатФак Монитор ТУСУР ЭконФак Ноутбук Вариант 27. НаименованиеВуза Адрес Команда ТГУ Томск, пр. Ленина, 36 МатФак ТГУ Томск, пр. Ленина, 36 ГРФак ТПУ Томск, пр. Ленина, 2 ГРФак ТПУ ФТИ Томск, пр. Ленина, 2 ФизФак ТУСУР Томск, пр. Ленина, 40 ФизФак ТУСУР Томск, пр. Ленина, 40 МатФак Вариант 28. НаименованиеВуза Команда Приз ТГУ ЭконФак Торт ТГУ МатФак Торт ТПУ МатФак Бананы ТПУ ФилФак Арбуз Вариант 29. НаименованиеЭмитента ТипЦБ ДатаЭмиссии ЗАО Агат акция привилегированная 13.05.2009 ЗАО ―Сибириада‖ акция обыкновенная 14.05.2009 ТОО Искра акция привилегированная 12.05.2009 ОАО ―КрАЗ‖ акция обыкновенная 14.05.2009 Вариант 30. Организация Адрес Статус ТРЕНД Москва, Кирова, 79 РОА ТРЕНД Москва, Кирова, 79 ОУП ЮРАС, первый Томск, Кирова, 26 ООО ЮРАС Томск, Кирова, 26 ОАО БЕППО Юрга, Кирова, 2 БПФ БЕППО Юрга, Кирова, 2 ПРС Вариант 31. Город Событие Дата Калуга пожар 11.09.1812 Калуга наводнение 14.09.1813 Вятка пожар 11.09.1812 Вятка пожар 15.09.1825 Вариант 32. B1 B2 B3 post cool stop post hot stop put cool stop get cool nonstop Вариант 33. A B C 14 362 154 509 412 678 648 362 154 3 412 4 Вариант 34. Риск Фреш Серия РФ С РФ С РФ С РФ С РФ С РФ С Вариант 35. Тип Вес Цена HDR 512 13500 HDR 432 13500 GTS 256 14000 GTS 512 16000 Вариант 36. A B C A11 B7 C2 A21 B7 C1 A17 B9 C4 A3 B9 C4 Вариант 37. A B C 111 31 82 101 31 3 45 77 2 45 77 7 92 91 54 92 91 115 Вариант 38. Red Blue Green F101 567 706 F101 A812 535 C255 567 706 C255 567 536 Вариант 39. D F T 284 17 78 968 17 89 274 33 56 904 33 56 Вариант 40. AA YY ZZ 72 62 52 71 61 52 73 62 53 74 63 53 74 63 51 71 61 51 Вариант 41. Наличие Тип Число Масса Yes FULL 45 90 No DEPT 54 130 No DEPT 45 130 Yes FULL 45 60 Вариант 42. Вероятность Время, с Мощность, вт Тип 694 15 2015 HDR 694 17 2015 HDR 604 15 3500 HPQ 604 17 2015 HDR Вариант 43. Тип Наличие Артикул Второй Да 17 Второй Нет 17 Первый Да 17 Первый Нет 17 Второй Неизвестно 18 Первый Неизвестно 18 Вариант 44. A B C 17 49 17 35 53 35 24 49 24 19 53 35 |