СУБД MS Access 2003 (960526), страница 2
Текст из файла (страница 2)
Проектирование физическоймодели БД. Структура физическойзаписиОценка физической модели БДРеализация БДРис. 2. Этапы проектирования БДТема 1. Проектирование реляционных баз данных71.3. Реляционная модель данныхМодель данных - это правила, которые определяют структуруданных, допустимые реализации данных и допустимые операциинад данными.Мифологическая модель описывает предметную область на содержательном уровне.
На первом этапе при ее разработке осуществляется анализ предметной области, решаемых задач, запросовпользователей и документов, отражающих события и процессы,протекающие в ПО. Результатом этого анализа являются спискиобъектов предметной области, перечни их свойств или атрибутов,определение связей между объектами и описание структуры ПОв виде диаграммы. Для каждого из атрибутов указываются ограничения на их возможные значения, определяемые свойствами ПО.Такие ограничения называются ограничениями целостности данных.
Мифологическая модель объединяет в единое «обобщенноепредставление» требования отдельных пользователей и служитсредством общения между ними, поэтому разрабатываетсябез учета особенностей представления данных в памяти ЭВМ.Концептуальная модель описывает объекты и связи ПОна формальном уровне. Ее разработка ведется на втором этапеи основывается на инфологической модели, полученной на первомэтапе.
В процессе разработки осуществляется выбор типа моделиданных и определяются ее элементы. Каждая СУБД поддерживаеттолько одну из моделей. Выбор модели данных и выбор СУБДтесно взаимосвязаны.Внутренняя, или физическая, модель данных определяет способразмещения данных непосредственно на машинном носителе, учитывает распределение данных, методы доступа и способы индексирования.
В современных прикладных программных средствахэтот уровень организации обеспечивается автоматически без вмешательства пользователя. Пользователь, как правило, оперируетв прикладных программах и универсальных программных средствах представлениями СУБД на организацию данных. Таким образом основная задача проектирования заключается в создании инфологической модели ПО и концептуальной БД.1.3.1. Определение РБДРБД представляет собой совокупность отношений, содержащих всю информацию, которая должна храниться в БД.
Отношением называется любая взаимосвязь между объектами и/или их8Проектирование баз данных. СУБД MS Accessсвойствами. Различают взаимосвязи между объектами, междусвойствами одного объекта и между свойствами различных объектов.Отношение задается своим именем и списком атрибутов элементов, связанных этим отношением:<имя отношения>(<список атрибутов>)Имя отношения выбирается таким образом, чтобы оно пояснялосмысл связи между элементами отношения (семантику отношения).Для описания некоторого свойства объекта или связи используется простейший неделимый элемент данных, называемый атрибутом.Атрибут характеризуется именем, типом, значением и другими свойствами.Имя атрибута - это условное обозначение атрибута в процессах обработки данных. Оно должно быть уникальным в пределаходного и того же отношения.Значение атрибута - величина, характеризующая некотороесвойство объекта и связи.Атрибуты соответствуют классам сущностей, объединяемыхданным отношением.
Список имен атрибутов отношения и их характеристик называют схемой отношения.Характеристики атрибутов задают область допустимых значений (ОДЗ) доя каждого аргумента отношения.Атрибуг или набор атрибутов, которые могут быть использованы для однозначной идентификации конкретного кортежа (конкретного экземпляра отношения), называется первичным ключомотношения или просто ключом.Математически отношение определяется следующим образом:пусть даны N множеств данных D\, D2f £>з, ••-, Av, тогда R есть отношение (связь) между этими множествами, если R - множествоупорядоченных W-кортежей вида <d\,cti,...,dN>, где d\eD\,d2cD2, ..-, dN cDN. Множества D[t D2, ..., DN являются множествами возможных значений атрибутов А\, А2,..., AN отношения R и называются доменами.
Таким образом, отношение является подмножеством декартова произведения одного или более доменовD,xD2j:---JcDv. Каждый кортеж в отношении уникален.Пример 1. БД о поставке деталей может быть описана следующими отношениями:Тема 1. Проектирование реляционных баз данных9Деталь (<номер детали>. <название детали>, <цвет>, <вес>).Поставщик (<код поставщика>, <фамилия>, <город>).Поставка деталей (<код поставщикам <номер детали>,<количество>),Первичные ключи подчеркнуты,Ограничения на значения атрибутов могут быть заданы типомданного для соответствующего атрибута (табл. I).Другая форма представления отношения - табличная.
Каждому отношению соответствует таблица с таким же именем. Атрибуту в таблице соответствует столбец с именем атрибута, а каждомукортежу отношения - строка таблицы. Строка таблицы часто называется записью, а значение атрибута - полем записи (по аналогии с сетевой моделью данных),Таблица 1ТипИмя атрибутаКод поставщикаФамилияСимвольный (3)Символьный (6)Номер деталиСимвольный (10)ЦелыйНазвание деталиЦветСимвольный (6)Символьный (6)ЦелыйВесКоличествоЦелыйПример 2. Описание отношений БД Поставка деталейс помощью табл.
2-4.Таблица 2. ДетальНомер детали101102Название деталиSecЦветБолтЧерныйЪМуфтаСиний9Таблица 3. ПоставщикКод поставщикаФамилияП1ИвановП2АлексинГородЯрцевоКурск10Проектирование баз данных. СУБД MS AccessТаблица 4. Поставка деталейНомер деталиКод поставщикаП1П2102101Количество4060Здесь в отношении Деталь атрибутами являются номер детали, название детали, цвет, вес. Значениями этих атрибутоввпервой строке таблицы будут соответственно <101, Болт, Черный, 3>.
Каждая строка таблицы описывает конкретный экземплярсущности Деталь. Доменами атрибутов будут: для номера деталиDt - множество целых чисел, для названия детали D2 - множествосимвольных строк, названий предметов, для цвета D?, - множествосимвольных строк, названий цветов, для веса D4 - множество целых чисел. В отношении два кортежа каждый состоит из четырехупорядоченных элементов. Для отношения Поставка деталейпервичный ключ является составным <код поставщика, номер оетали>.Таким образом, в ходе разработки РБД должен быть определенсостав взаимосвязанных реляционных таблиц и определен составатрибутов каждого отношения с указанием ограничений на их допустимые значения.
Состав атрибутов должен отвечать требованиям нормализации. Нормализация отношений производится на этапе концептуального проектирования БД,Существует несколько нормальных форм (НФ) реляционноймодели данных (РМД), которые позволяют исключить избыточноедублирование данных, обеспечить целостность и непротиворечивость данных.При первой нормальной форме (1НФ) все атрибуты отношениядолжны быть простыми (атомарными, неделимыми) с точки зрения СУБД.НФ более высокого порядка основаны на понятии функциональной зависимости (ФЗ), которая может быть определена следующим образом.Пусть А и В - подмножества атрибутов отношения.
Говорят,что В функционально зависит от .4 (Л—>5), если для каждого значения А существует ровно одно связанное значение В. ФЗ можновыявить, исходя из базовых свойств самих атрибутов путем анализа.Тема 1. Проектирование реляционных баз данных11При второй нормальной форме (2НФ) должна обеспечиваться1НФ и каждый неключевой атрибут функционально полно зависитот ключа.Полная ФЗ от ключа означает, что если ключ составной,то любой неключевой атрибут зависит от всего ключа и не зависитни от какой его части.При третьей нормальной форме (ЗНФ) отношение должно находиться 2НФ, а также каждый неключевой атрибут нетранзитивно зависит от ключа, проще говоря: отсутствуют ФЗ между неключевыми атрибутами.Нормальная форма Бойса-Кодда (НФБК) является развитиемЗНФ и требует, чтобы в отношении были только такие ФЗ.
леваячасть которых является потенциальным ключом отношения. Потенциальным ключом называется такое подмножество атрибутовотношения, которое удовлетворяет определению первичного ключа отношения. Фактически первичный ключ - это один из потенциальных ключей, назначенный в качестве первичного.Поясним эти определения на примере.Пример 3. Рассмотрим БД для консультанта радиоакадемииУспеваемость студентов общежития. БД состоит из одного отношения, в котором представлена информация о студентах, проживающих в общежитии, и их оценках по изучаемым дисциплинам в различных семестрах.Задано отношение:Студент (<Сном>, <Сфам>, <Кном>, <Тном>, <Дисциплина>,<Семеспгр>, <Оценка>)Основные атрибуты отношения: номер зачетной книжки студента (Сном); фамилия студента (Сфам); номер комнаты(Кном), где он проживает; номер телефона (Тном) в комнате(предполагается, что один телефон на одну комнату); дисциплина;семестр; оценка.
Диаграмма (рис. 3) отражает ФЗ между атрибутами отношения: Сном~>Сфам, Сном—>Кном, Сном->Тном,Кном~>Тном, Тном—>Кном, <Сном, Дисциплина, Семестр>~>->0ценка.Проектирование баз данных. СУБД MS AccessРис. 3. Диаграмма ФЗ отношения СтудентРассмотрим некоторые определения.Потенциальный ключ представляет собой атрибут (или множество атрибутов), который может быть использован для данногоотношения в качестве первичного ключа.Детерминантом называется левая часть ФЗ.Большинство возможных аномалий в БД будет устраненов случае приведения каждого отношения в НФБК. Эта форма определяется следующим образом: отношение находится в НФБКтогда и только тогда, когда каждый детерминант отношенияявляется потенциальным ключом.Существуют НФ более высокого уровня, которые накладываютболее сильные ограничения; на практике в большинстве случаевдостаточно получить отношения в НФБК.В отношении Успеваемость студентов общежития один потенциальный ключ <Сном, Дисциплина, Семестрх Детерминантами являются: <Сном, Дисциплина, Семестр>, <Сном>, <Кном>,<Тном>.
Представим списки детерминантов и потенциальныхключей в виде таблицы (табл. 5).Таблица 5Потенциальные ключи<Сном, Дисциплина, Семестр>Детерминанты<Сном, Дисциплина, Семестр><Сном><Кном><Тном>Очевидно, что данное отношение не находится в НФБК, таккак детерминанты Сном, Кном, Тном не являются потенциальнымиключами.
Для приведения отношения к НФБК его следует разбитьна три отношения:Тема 1. Проектирование реляционных баз данных13Студент (Сном, Сфам, Кном)Оценка (Сном, Дисциплина, Семес'ф, Оценка)Телефон (Кном, Тном).Каждое из этих отношений находится в НФБК, так как в нихвсе детерминанты являются потенциальными ключами,1.3.2. Целостность реляционных данныхЛогические ограничения, которые накладываются на данные.называются ограничениями целостности.