Сделай Сам Свою Работу на 5

Моделирование данных предметной области





 

Предметная область – это некоторая часть реального мира, деятельность которой требуется автоматизировать с помощью базы данных. Например, Вуз, Факультет, Поликлиника, Магазин, Фирма, Школа, Ателье, Автопредприятие, Сессия, Расписание занятий и т. д. – это предметные области (ПО).

Связи между объектами отражают некоторое взаимодействие между ними, обусловленное выполнением определенных бизнес-процессов, происходящих в организации. Для реализации таких связей в реляционную базу данных включаются либо специальные таблицы, либо специальные поля в таблицах.

Например, объекты Студент и Дисциплина вступают во взаимодействие друг с другом во время сдачи экзамена, то есть между ними существует связь, которую можно назвать СдаетЭкзамен (со стороны студента) или СдаетсяСтудентом (со стороны дисциплины). В реальной жизни такая связь носит название Экзамен или Оценка. Эту связь можно изобразить следующим образом:

M ОЦЕНКА N

СТУДЕНТ <-----------------------------------------------> ДИСЦИПЛИНА,

где M и N означают степень участия в связи каждого из объектов. В данном случае M определяет степень участия в связи объекта дисциплина (каждую дисциплину сдают много студентов), а N определяет степень участия в связи объекта СТУДЕНТ (каждый студент сдает много дисциплин). Для реаализации связи ОЦЕНКА требуется в БД создать таблицу с тем же именем и заголовком, включающим ключевые поля связываемых объектов и, возможно, другие поля.



ОЦЕНКА (НомерЗачетки, НазваниеДисциплины, Балл, ДатаСдачи, ФИОПреп)

Таким образом, таблица ОЦЕНКА будет хранить все оценки всех студентов по всем дисциплинам.

Другой пример, объекты Студент и Группа взаимодействуют друг с другом в процессе обучения, то есть между ними существует связь, которую можно назвать Учится (со стороны студента) или Включает (со стороны группы). Эту связь можно изобразить следующим образом:

M УЧИТСЯ 1

СТУДЕНТ <-----------------------------------------------> ГРУППА,

где 1 означает, что каждый студент учится только в одной группе, то есть степень участия объекта СТУДЕНТ в связи УЧИТСЯ равна 1, тогда как степень участия объекта ГРУППА в связи УЧИТСЯ такая же, как в предыдущем примере, т. е. М, так как группа включает много студентов. Для реализации связи УЧИТСЯ требуется в состав полей односвязного объекта СТУДЕНТ ввести для связи ключевое поле многосвязного объекта ГРУППА, например поле НомерГруппы.



СТУДЕНТ (НомерЗачетки, ФИО, ДатаРожд, …, НомерГруппы)

Связи, рассмотренные в примерах, кратко обозначаются M : N и М : 1 (или 1 : М). Кроме этих связей, в практике встречаются и связи вида 1 : 1, например:

1 СТОЛИЦА 1

ГОРОД <------------------------------------------------------------> ГОСУДАРСТВО

или

1 РУКОВОДИТ 1

РАБОТНИК <----------------------------------------------------->ОТДЕЛ

Существуют различные варианты реализации таких связей в СУБД.

В качестве основного примера для дальнейшего изложения материала выберем ПО Расписание занятий, далее просто РАСПИСАНИЕ. Здесь и далее по тексту будем обозначать имена таблиц прописными буквами, а имена полей таблиц – начинать с прописной буквы и далее строчными.

Схема реляционной базы данных

 

Схемой базы данных называется подробное описание всех таблиц, включенных в базу данных в процессе ее конструирования, первичных (или базовых) таблиц. Схема БД должна включать:

Ø имена всех базовых таблиц;

Ø имена полей каждой таблицы;

Ø типы полей каждой таблицы;

Ø значения свойств каждого поля каждой таблицы;

Ø описание связей между таблицами.

Схема БД РАСПИСАНИЕ (рис. 2) без указания типов и свойств полей содержит 11 таблиц-объектов и 1 таблицу-связь РАСПИСАНИЕ.

В схеме жирным шрифтом выделены первичные ключи таблиц, а подчеркнуты внешние ключи (поля связи между таблицами), посредством которых отдельные таблицы связываются в единую БД. Внешние ключи – это "клей", соединяющий все отношения реляционной БД в единое целое в соответствии с правилами взаимоотношений объектов предметной области.



ГРУППА (НомерГруппы, ШифрСпец, КоличСтудентов, КоличКоммерчСтуд, КоличМуж, КоличЖен, Староста, ШифрФак).

СПЕЦИАЛЬНОСТЬ (ШифрСпец, НазваниеСпец, СрокОбучения, Квалификация, ШифрКаф).

ФАКУЛЬТЕТ (ШифрФак, НазваниеФак, Декан).

ДИСЦИПЛИНА (ШифрДисц, НазваниеДисц).

ПАРА (НомерПары, ВремяНач, ВремяОконч).

ДЕНЬ (НомерДня, НазваниеДня).

ЗАНЯТИЕ (НомерЗан, НомерПары, НомерДня).

ПРЕПОДАВАТЕЛЬ (ШифрПрепод, ИмяПрепод, ШифрКаф).

КАФЕДРА (ШифрКаф, НазваниеКаф, ЗавКаф, ТелефКаф, НомерАуд).

ВИДЗАН (ШифрВидЗан, НазваниеВидаЗан).

АУДИТОРИЯ (НомерАуд, Вместимость, Ключ).

РАСПИСАНИЕ (НомерГруппы, НомерЗан, НомерАуд, ШифрПрепод, ШифрДисц, ШифрВидЗан).

Рис. 2. Упрощенная схема БД РАСПИСАНИЕ

Схема связей БД РАСПИСАНИЕ с указанием только полей связей и первичных ключей таблиц (рис. 3) содержит связи между таблицами без контроля целостности данных по этим связям. Отсутствие таких ограничений означает, что в базу данных разрешается вводить любые данные в смысле их согласованности по связям между собой. Например, допускается вводить в таблицу РАСПИСАНИЕЗАН в поле НомерГруппы любой номер, удовлетворяющий только типу данных этого поля, даже если такой группы нет в списке групп таблицы ГРУППА.

 
 


Рис. 3. Схема связей базы данных

Типы полей

 

Каждое поле определяет какое-либо свойство сущности (объекта) или связи. Тип поля – основная его характеристика, которая определяется исходя из природы значений, принимаемых полем как в реальной жизни, так и в процессе эксплуатации БД. Выбирая тип поля, необходимо учитывать диапазон допустимых для него значений, а также набор операций, которые потребуется применять к этим значениям в процессе выполнения запросов пользователя к БД. Например, СУБД Access 2000 имеет типы полей, представленные в табл. 1.

№ п/п Тип Описание
Текстовый Цепочка алфавитно-цифровых символов длиной не более 255
MEMO Текст переменной длины до 64000 байт
Числовой Числовые значения (целые или вещественные числа)
Дата/Время Дата и время
Денежный Денежный (целые или вещественные числа)
Счетчик Уникальное число, которое в каждой новой записи Access автоматически увеличивается на 1 или выбирается случайным образом
Логический Логические значения (истина или ложь)
Объект OLE OLE-объекты и иллюстрации
Гиперссылка Строка, состоящая из букв и цифр, и представляющая адрес гиперссылки ( текста или файла с текстом).

Таблица 1

Мастер подстановок

 

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

Таким образом, использование Мастера подстановок позволяет добиться двух преимуществ при ведении БД:

1) ускорения ввода значений за счет выбора их из списка;

2) повышения уровня целостности вводимых данных за счет выбора из списка, а не ручного ввода.

 

Свойства полей

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.