Главная » Просмотр файлов » Программирование баз данных MS SQL Server

Программирование баз данных MS SQL Server (1084479), страница 74

Файл №1084479 Программирование баз данных MS SQL Server (Программирование баз данных MS SQL Server) 74 страницаПрограммирование баз данных MS SQL Server (1084479) страница 742018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 74)

Требования к данным, находящимся в третьей нормальной форме, перечислены ниже. 63 Таблица должна соответствовать требованиям ко второй нормальной форме (как уже было сказано, переход от низших нормальных форм к высшим осуществляется строго последовательно). 63 Ни в одном столбце не должны проявляться какие-либо зависимости от другого неключевого столбца. Нормализация и другие важные проблемы проектирования 289 На первый взгляд лсожет показаться, что к этой катего|ти относится также аиолбгц Опл Г Рг1 се, и зто предположение действительно отчасти оп|заоди ваепия.

Безусловно, таб лица Ргос)о с Г э с данными о вава|так, кото|>ая будет создана для устфанения указанного не достатка, может и должна соде|тжоть столбец Оп1 С Ргз'. Се, но сами данные этого стаабца немного отличаюта~ от д|тугих данных. В дештюитагьности дела обстоят так, что было бы лучше тфисвоить этому спюлбцу имя Е з' э Гргг се Щена по пфейску|занту), поскольку цена на данный товаР должна оставаться неизменной, нагавиасио от того, в какой заказ включен указанный тога|7. Но включая в таблицу Огс)ег0е газ 1 в столбец Опг СРгз се (Цена за единицу тово|за) вместо столбца Езэсрг1ое, мьг оставляем за собой две воэможности. Во.пгфвых, могут бьопь п|гедложены скидки, с учетом кояпфых цена тога|за в манент тфодажи изменится. Это означаега что иена, указанная в соопветствуюкэей стфоке таблииы Огс)е г0е Г а 1 1 э, может отличаться от номинальной цены, указанной в таблице Рго с)п с Г и.

Воетсфых, цена, которую мы можем назначить за егягницу пюви|та, может изменяться со в|заменем под действиан таких фактгфов, как инфляция, но будущие изменения цен не должны влиять на то, какие цены были включены в заказы, фактически выполненные в прошлом. Иными агавами, иена — это одна из тех ха|гакяиутистик товара, копкфая в дсйсспгвительности имеет два аспекта поскольку она зависит гг от намфа детали, Рэ г т Ио, и от пфвичн ого ключа табгицы Огс)ег0еса11з (иначе гово|зя, от значений Огг)егЕ0 и Ез не ЕГет). Прежде всего необходимо создать новую таблицу (назовем ее ргоацсгэ), предназначенную для хранения информации о деталях (в данном случае предметом торговли, т.е. товаром являются детали).

В этой новой таблице будет храниться та информация, содержавшаяся в таблице Огдег0ега11э, которая в большей степени зависит от значений в столбце Рагс))о, чем от значений в столбце Огс)ег10 или ЫпеЕгепг (табл. 8.7). Таблица 8.7. Таблица ргос)пока пеяохареаоп ие рахено (рк) 1А4536 ОН2400 Р1апде 1пзесгог ОН2403 415436 1пЗеспос нега ЗХ9567 909200 Рпнр Рап 6С5437 ЗН6250 Рап Сопгго1 ЗЕ9200 2Р5523 Рап Нопз1пд Рояр ЗХ9567 Уже известно, что таблицы в рассматриваемом примере находятся во второй нормальной форме, поэтому рассмотрим, насколько они соответствуют двум другим требованиям.

Вначале попытаемся выяснить, есть ли какие-либо столбцы, зависящие от столбца, отличного от столбца первичного ключа. Ответ на этот вопрос является положительным. Фактически в таблице Огаег0ега11э имеется целый ряд столбцов, которые зависят от столбца рагс)40 не меньше, а, возможно, даже больше, чем от столбца первичного ключа рассматриваемой таблицы. В частности, от столбца Раггно полностью зависят столбцы ие-' д)гг (Вес) и Оеэсггргйоп (Описание), поэтому необходимо снова выполнить разбиение одной таблицы на две.

290 Глава 8 После этого мы получаем возможность изъять из таблицы Ог44егоега118 все указанные столбцы, кроме столбца внешнего ключа Рагсно (табл. 8.8). Таблица 8.8. Таблица ок44екоесаа1е Океекио Ьвпетьма Раксэго Яку ПпЗЕРкаее тоеа1Рквсе 100 100 184536 082400 082403 415436 ЗХ9567 809200 805437 386250 809200 285523 ЗХ9567 15 27 108 29 750 62.50 12 116 100 750 62.50 84 15 100 101 102 102 15 102 103 103 32 32 480 165 42 40 1 12 165 103 :. Б: настоящей книге автор иногда сознательно идет нв нарушение требований нормали' , зации',:причем чаще, всего такив' нарушения допускаются применительно к', производным данным. 'Это связано'о тем,' что применение пройэводнйх данных позволяет, существенно , повысить быстродействие.

)чапримеР запрос с условием.интйк тойэ1Рсаре > 8100 вы» ' полняется намного быстрее'пах сравнению с запросом;-содержащим"условие 'ИйзЯК Оау: .".'Вп18Ргзсе > 56, особенно если имеется возможность создать.индекс на вычисленном столбцечсоса1Рх1ае. ',но,:с другой стороны, автор иногда применяет скорее гибриднйй 'псфкод, в котором,ис-- ,.пользуется вычисленный столбец;. в 'сумма'значвйий двух других столбцов поддерживает ' ' ся в актуальном сострбнии с гюмощыо' суБД 808 Яегпкег, [напбмним,,что именно,зта идея ' 'реализована в главе б в примеречиспользсванйя столбца Ртси1оцэза1айу в'таблице; :-Кир1оуееа базы данных: лйсочпб1по); Боли какой*то столбец становится очень, важным с точки зрения производительности (например, если. критерии, а которых учитйвзсются зна- ' чения.из этого столбца, 'применяются' во многих запросах)'; томожет потребоваться 881 ' .дать йндекс на этом, новом вычисленном столбце, Важность индекса, состоит,.в том; что ': е нем"материализуются",ейчисленныа"данные, а ато 'означает„,что 'для субд БО1 Бе4чег исключается йеобкодимость рассчитывать'зйачвния в вычисленйом столбце дийамически,, ' -Вместо етого значенйе вычисляется только единожды, при сокранении данных о строке в индексе,' а'в двльнейщем 'используется заранее вычисленное значение столбца.

Такая ' ' организация работы позволяет,:дейсшительно'добиться очень"высокого быстродействия;. дополнительная информация по этой теме приведена в главе 8. В результате этого устраняется первый недостаток, препятствующий созданию третьей нормальной формы (зависимость между столбцами), но остается также необходимость исключить производные данные. В этом случае таблица Ог44егоега118 содержит столбец Тока1Рг1се, данные которого фактически могут быть получены путем перемножения значений, взятых из столбцов Яку О01СРг1се. Наличие подобных столбцов полностью противоречит требованиям нормализации. Нормализация и другие важные проблемы проектирования 291 Итак, чтобы выполнить все требования к созданию третьей нормальной формы, достаточно удалить столбец тоса1Рггсе и в дальнейшем вычислять значения общей стоимости по мере необходимости.

Прочие нормальные формы Кроме первых трех нормальных форм, разработаны еще три перечисленные ниже нормальные формы, которые рассматриваются в теоретических исследованиях как часть модели нормализации. П Нормальная форма Бойса-Кодда (Воусе-Сос(с(). Фактически эта нормальная форма считается разновидностью третьей нормальной формы.

Она относится к той ситуации, в которой имеется несколько перекрывающихся потенциальных ключей. Такая ситуация может возникать только при следующих условиях: а) все потенциальные ключи являются составными ключами (иными словами, для создания ключа требуется больше одного столбца); б) количество потенциальных ключей больше одного; в) каждый потенциальный ключ имеет по меньшей мере один общий столбец с другим потенциальным ключом. Обычно для нормализации таблиц, имеющих указанные особенности, может применяться несколько разных способов, но на практике такая ситуация возникает крайне редко. П Четвертая нормальная форма.

Эта нормальная форма предназначена для устранения проблем, связанных с наличием многозначной зависимости. Многозначная зависимость возникает в такой ситуации, в которой ни один столбец в таблице не зависит от столбца, отличного от столбца первичного ключа, и все столбцы зависят от всего первичного ключа (т.е. таблица находится в третьей нормальной форме). Тем не менее при некотором довольно редком стечении обстоятельств может обнаруживаться отдельная зависимость одного из столбцов первичного ключа от других столбцов первичного ключа. Такая ситуация встречается редко и обычно не становится причиной каких- либо значительных проблем. Поэтому специалисты по базам данных чаще всего игнорируют возможность применения четвертой нормальной формы, и она не рассматривается в настоящей книге.

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

Безусловно, приведенное выше описание нормальных форм высокого порядка сделано очень кратким, но автор принял решение об этом вполне осознанно. Дело в том, что в действительности эти формы приходится применять чрезвычайно редко, хотя н нужно иметь о них определенное представление. 292 Глава 8 Связи Хотя связи между объектами, возникающие в реальной жизни, намного глубже и разностороннее по сравнению со связями между таблицами базы данных, изучение аналогий между теми и другими позволяет лучше разобраться в предмете. В частности, по утверждению специалистов, ключом к успешному созданию связи является понимание того, какие роли играют оба участника связи, а также соблюдение допустимого регламента и правил поддержки связи.

Характеристики

Тип файла
PDF-файл
Размер
39,07 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее