Общие сведения о CASE-средствах.
Наглядное представление концептуальных схем баз данных обусловило широкое распространение ER-модели в CASE-средствах (Computer- Aided System Engineering ). Эти средства предназначены для автоматизированного проектирования реляционных баз данных. Широко распространены CASE-системы, позволяющие выполнять ER-диаграммы в соответствии со стандартом IDEF1X. К ним относятся, в частности: · Erwin, · Design/IDEF, · Power Designer. CASE-средства позволяют: · строить ER-диаграммы в реальном масштабе времени, используя при этом богатую цветовую палитру, · сквозную проверку синтаксических правил. Графические средства моделирования предметной области дают возможность наглядно изучать концептуальную модель данных и перестраивать ее соответственно поставленным целям и имеющимся ограничениям.
Современные CASE-средства обладают, например, такими характерными особенностями, как:
· единый графический язык. Все участники проекта обеспечиваются единым, строгим, наглядным графическим языком, позволяющим получать проект с простой, ясной структурой; · использование репозитария. Репозитарий – это база данных проекта, предназначенная для хранения всей информации о проекте, которая может использоваться совместно разработчиками соответственно их правам доступа; · поддержка коллективной разработки и управления проектом. Поддерживаются возможность работы в сети, импорт-экспорт фрагментов проекта, а также функции, необходимые в процессе разработки и сопровождения проектов – планирование, контроль, руководство, взаимодействие; · макетирование. Можно быстро строить макеты будущей базы данных, что позволяет оценить на ранних этапах разработки, насколько она приемлема для будущих пользователей;
· генерация документации. Вся документация по проекту генерируется автоматически на основе репозитария. Она всегда отображает текущее состояние дел, так как любые изменения в проекте автоматически отображаются в репозитарии; · верификация проекта. Это проверка проекта на полноту и состоятельность на ранних этапах разработки. Она влияет на успех разработки в целом. Современные CASE-средства поддерживают все этапы ЖЦБД. Пример программного окна Erwin показан ниже.
5.1 Нормализация данных в реляционных таблицах
Нормализация представляет собой процесс реорганизации данных в реляционных таблицах путем ликвидации повторяющихся групп и иных противоречий в хранении данных с целью приведения таблиц к виду, позволяющему осуществить корректное редактирование данных. Таблица находится в той или иной нормальной форме, если она удовлетворяет определенному набору требований. Теоретически существуют 5 нормальных форм, хотя на практике используются три нормальные формы, которые рассмотрим более подробно. Первой нормальной формой называется реляционная таблица, в которой все значения полей являются атомарными, т.е. любая реляционная база данных находится в первой нормальной форме. Реляционная таблица соответствует второй нормальной форме, если она находится в первой нормальной форме, и ее не ключевые поля зависят от первичного ключа. Реляционная таблица соответствует третьей нормальной форме,если в таблице не имеется транзитивных зависимостей между не ключевыми полями, т.е. значение любого поля таблицы, не входившего в первичный ключ, не зависит от значения другого поля, не входившего в первичный ключ. Первая нормальная форма. Предположим, что сначала все заказы клиентов были сведены в одну таблицу ЗаказИнфо: ЗаказИнфо
Таблицы в первой нормальной форме являются, как правило, избыточными, например сведения о клиенте (Код клиента, Адрес) повторяется в записи о каждом заказанном продукте. Проблемы такой таблицы: · Узнаем адрес клиента, только в том случае если он что- то заказал · При удалении записи о продукте одновременно удаляются все сведения о самом заказе и о клиенте · Если сменил адрес, например, то его надо менять в каждой записи
Вывод: Данные в таблице необходимо нормализовать путем разбиения исходной таблицы на несколько таблиц, связанных первичными и внешними ключами. Вторая нормальная форма. 1-й шаг Для связывания в дальнейшем таблиц, получаемых из Таблицы ЗаказИнфо, в ней нужно определить поле, которое будет первичным ключом. Такое поле рекомендуется выбирать из тех полей, записи в которых являются избыточными. Учитывая выше указанные проблемы таблицы ЗаказИнфо, определим поле Код клиента в качестве первичного ключа. По определению ссылочной целостности первичный ключ не должен содержать повторяющихся записей, поэтому первая промежуточная таблица, назовем ее ЗаказИнфо1, будет содержать только неповторяющееся записи Кода клиента.
ЗаказИнфо1
В исходной таблице поле Код клиента определяется как внешний ключ
Й шаг В исходной таблице определяем поля, которые зависят только от первичного ключа, т.е. их значения не меняются при одинаковом значении записи первичного ключа. Очевидно, что это поля Город и Улица Только эти поля остаются в таблице ЗаказИнфо1, остальные поля удаляются. Таблица ЗаказИнфо1 переименуем в таблицу Клиенты. Из исходной таблицы ЗаказИнфо эти же поля удаляются и исходная таблица ЗаказИнфо перименовываем в таблицу ЗаказИнфо2: Клиенты
ЗаказИнфо2
В результате получаем вторую нормальную форму, схема данных которой выглядит: Клиенты ЗаказИнфо2
Во второй нормальной форме можно также заметить аномалии, в частности в таблице ЗакзаИнфо2: · наименование валюты необходимо повторять при каждом заказе · при удалении заказа может быть удалено и наименование валюты
Вывод: необходимо преобразовать таблицу ЗаказИнфо2, чтобы устранить указанную аномалию.
Третья нормальная форма. 1-й шаг В таблице ЗаказИнфо2, находящейся во второй нормальной форме, определим поле Код валюты в качестве первичного ключа. Очевидно, что полностью от этого поля зависит только поле Наименование валюты. Из таблице ЗаказИнфо2 выбираются только уникальные (неповторяющиеся) записи Код Валюты, и из полей Код Валюты и Наименование получается третья таблица Банк Банк
Й шаг Из таблицы ЗаказИнфо2 удаляется поле Наименование валюты и таблица ЗаказИнфо2 переименовывается в Таблицу Заказы Заказы
Й шаг
Объединяются Таблицы Клиенты, Заказы и Банк с помощью первичных и внешних ключей,
Структура базы данных в третьей нормальной форме:
Клиенты Заказы Банк
Преимущества нормальных форм таблиц: устранение избыточности таблиц; независимость записей в таблице с первичным ключом от записей в таблице с соответствующим внешним ключом, т.е. записи в таблице с внешним ключом (detail -таблицы) могут быть изменены (удалены) без нарушений в master – таблицы.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|