Концептуальный уровень проектирования
3.1. Основные определения
Концептуальный уровень является основой проектирования баз данных, так как позволяет создать графическую модель базы данных, выявить основные элементы и описать взаимосвязи между ними.
Основные определения:
· концептуальная схема – графическое представление данных на концептуальном уровне;
· сущность – объект реального мира, информация о котором хранится в БД.
Пример: дом, машина, человек, книга и т.д;
· атрибут – это данные, описывающие (характеризующие) сущность.
Пример: для сущности человек: рост, возраст, ФИО, адрес и т.д.;
· ключ – атрибут, содержащий уникальные (не повторяющиеся) значения.
Пример: по номеру паспорта, в сущности «СОТРУДНИК» можно определить ФИО человека (см. таблицу 3.1.);
Таблица 3.1.
Паспортные данные сотрудника
Номер паспорта | Фамилия | Имя |
Иванов | Андрей | |
Иванов | Максим | |
Латышев | Андрей |
· связь двух или более сущностей – это зависимость между атрибутами этих сущностей;
· степень связи - это характеристика связи между сущностями и может быть: 1:1, 1: М, М: М;
· класс принадлежности определяет наличие связи между сущностями. Он может быть: всюдуопределенным (обязательным) и частичным (необязательным);
· всюдуопределенная связь – это связь, в которой все атрибуты сущности участвуют обязательно;
· частичная связь – это связь, в которой участвуют не все атрибуты сущности;
Виды связей между сущностями и их графическое обозначение
I – однозначная связь
1:1 - «один-к-одному»: - это связь, которая устанавливается между одним объектом и одним атрибутом.
ФИО→ номер паспорта,
ФИО → ИНН
М – многозначная связь
1: m – «один-ко-многим»: - это связь, которая устанавливается между одним объектом и многими атрибутами.
человек→ место рождения.
группа→>студенты,
n: m – «многие-ко-многим»: - это связь, которая устанавливается между многими объектами и многими атрибутами.
студент<↔> преподаватель,
библиотека<↔>читатель,
завод<↔> рабочие
V – всюдуопределенная связь. Обозначение:
человек à группа крови,
товарà цена.
C – частичная связь. Обозначение:
преподаватель à дисциплина,
человек à автомобиль,
Обозначения элементов концептуальной схемы отражено на рис. 3.1.
Обозначения элементов концептуальной схемы
1. Сущность
2. Атрибут
3. Подкласс сущности
4. n-арная связь – связь между тремя или более сущностями.
Рис.3.1
Порядок построения концептуальной схемы
1. Определение сферы применения БД.
2. Сбор информации об использовании данных, то есть, на какие запросы БД должна формировать ответы.
3. Выбор сущностей и атрибутов.
4. Определение связей между сущностями..
5. Отображение атрибутов и сущностей.
6. Определение и отображение степени связи и класса принадлежности между сущностями.
7. Определение ключевых атрибутов.
8. Проверка концептуальной схемы.
КЛАССИЧЕСКИЕ Модели данных
После построение концептуальной схемы необходимо выполнить логическое проектирование БД, то есть выбрать модель данных для дальнейшего построения БД.
Модель данных – это метод структурирования данных, позволяющий описывать объекты и взаимосвязи между ними.
Иерархическая модель данных (ИМД)
ИМД – это метод структурирования информации, в котором все отношения структурированы в виде деревьев.
Корневая вершина - это запись, которая имеет подчиненные записи, и сама не является потомком.
Потомок – подчиненная запись в иерархическом отношении.
Предок – подчиняющая запись.
Иерархическая организация данных представлена на примере БД «Предприятие» на рис.4.2.
Иерархическая организация данных
Рис.4.2
Сетевая модель данных (СМД)
СМД – это метод структурирования информации, который позволяет отображать разнообразные взаимосвязи элементов данных в виде произвольного графа.
Она является расширением иерархической, так как в модели допускается любое количество объектов и любые связи между ними.
В СМД элементарные данные и отношения между ними представляются в виде ориентированной сети (вершины – данные, дуги - отношения).
Пример схемы сетевой организации данных на примере БД «Предприятие» представлен на рис. 4.5.
Рис. 4.5.
В отличие от иерархической, в сетевой модели объект-потомок может иметь не одного, а любое количество объектов предков. Тем самым допускаются любые связи, в том числе и одноуровневые
Реляционная модель данных (РМД)
РМД – это метод структурирования информации, который представляет собой набор двумерных таблиц, в каждой из которых содержатся сведения об одной из сущности и связи между которыми, явно не указаны.
Свойства реляционных таблиц
1. в приделах одной таблицы нет строк и столбцов с одинаковыми данными;
2. все данные в приделах одного столбца имеют одинаковый тип данных;
3. в приделах одной таблицы нет 2-х столбцов с одинаковыми именами;
4. строки и столбцы таблицы могут просматриваться в любом порядке без учета их смысла.
Основные понятия:
Отношение - это таблица, состоящая из строк и столбцов.
Атрибут или поле - столбец таблицы.
Домен – это множество допустимых значений данного атрибута.
Кортеж или запись - строка таблицы.
Пример реляционной организации данных представлен на примере БД «Предприятие» представлен на рис. 4.6.
Реляционная организация данных
Отделы
Код отдела | Наименование | Руководитель |
1 | Бухгалтерия | Манылов А. А. |
Должности
Код должности | Наименование должности |
ГБ | Главный бухгалтер |
Сотрудники
Код сотрудника | ФИО | Код отдела | Код должности | Оклад |
Беркутова Н.И. | ГБ |
Рис. 4.6
Современные Модели данных
Постреляционная модель данных (ПМД)
ПМД –это расширенная реляционная модель, допускающая многозначные поля.
Многозначные поля – поля, значения которых состоят из подзначений. Набор значений многозначных полей считается самостоятельной таблицей, встроенной в основную таблицу.
Пример организации данных с помощью ПМД приведен на рис.5.1.
Постреляционная модель данных
Номер накладной | ФИО Покупателя | Название товара | Количество, кг | Сумма покупки, руб |
Иванов И.П. | сыр | |||
рыба | ||||
Смирнов А.А. | макароны | |||
печенье | ||||
Килина В.Д. | конфеты |
Рис.5.1
Многомерная модель
ММД – это модель данных, которая используется в информационных системах, позволяющих обрабатывать информацию для проведения анализа и принятия решений.
По сравнению с реляционой МД многомерная модель обладает более высокой наглядностью и информативностью.
Информацию модели можно представить в виде многомерных объектов – гиперкубов.
Пример графической организации данных с помощью ММД приведен на рис. 5.3.
Организации данных с помощью многомерной модели данных
Измерения:
Время (год) - 1994
Менеджер - Петров
Модель - «Волга»
Показатель:
Объем продаж
Рис. 5.3
Измерение – множество однотипных данных, образующих одну из граней гиперкуба.
Ячейка (показатель) – поле, значение которого однозначно определяется фиксированным набором измерений. Тип поля чаще всего определен как цифровой.
Объектно-ориентированная модель данных (ОМД)
Структура объектно-ориентированной БД графически представима в виде дерева, узлами которого, являются объекты. Свойства объектов описываются некоторым стандартным типом (например, строковый - String) или типом, конструируемым пользователем (определяется как Class). Значением свойства типа String является строка символов. Значение свойства типа Class есть объект.
Пример организации данных с помощью ОМД приведен на рис. 5.4.
Объектно-ориентированная модель данных
Техникум | ||
Свойство | Тип | Назначение |
Название | String | СПЭТ |
Адрес | String | Гончарова, 53 |
Отделение | Class |
Отделение | ||
Название | String | |
Форма обучения | String | очная |
Группа | Class |
Группа | ||
Шифр | String | АСУ-21 |
Количество человек | String |
Рис. 5.4.
Типы данных
- числовой (0,45, 345, 2Е+5);
- символьный (алфавитно-цифровые) («строка», «пятница»);
- дата, задаваемые с помощью специального типа «Дата» или как символьные данные (01.12.02, 23/ 2/ 2000).
- временный и дата – временный (31.01.85, 9:10:03, 6.03.1960 12:30);
- символьный переменной длины. Предназначен для хранения текстовой информации большой длины;
- денежный;
- логический.Данное этого типа может принимать только одно из двух взаимоисключающих значений – TRUE или FALSE (наличие водительских прав (да - нет);
- двоичный. Предназначен ля хранения графических объектов, аудио- и видеоинформации, хронологической и другой специальной информации (Access - OLE);
- гиперссылка. Предназначен для хранения ссылок на различные ресурсы (файлы, узлы, документы), находящиеся все базы данных;
- пользовательский тип - подтип системного типа данных, приспособленный к конкретным требованиям схемы базы данных (дни недели).
В современных СУБД с различными моделями данных могут использоваться все перечисленные типы данных.
ПервичныЙ и внешниЙ ключи
Понятие ключа
В каждой таблице должна быть только одна функциональная зависимость вида:
K→F, где К – первичный ключ,
F – все остальные атрибуты таблицы.
Код книги | Название | Автор | Год издания | Издательство |
БД | Хомоненко | ФОЛИО | ||
БД | Мельников | ФОЛИО |
7.2. Основные определения
Первичный ключ – минимальный набор атрибутов, однозначно определяющий каждую строку таблицы.
Составной ключ – ключ, который содержит два или более атрибута.
Внешний ключ – набор атрибутов одной таблицы, являющейся ключом другой таблицы, который используется для установления логических связей между таблицами.
Пример: первичный ключ.
Рабочие
Таб. номер | ФИО | Тарифная ставка | Профессия |
Егоров К. Г. | 12,50 | Электрик | |
Бочкин М.О. | 13,75 | Штукатур | |
Смирнов Р.П. | 17,40 | Плотник | |
Бочкин М.О. | 15,50 | Электрик |
Пример: составной ключ.
Код студента | Дата защиты отчета | Группа |
12.05.01 | АСУ-21 | |
24.09.01 | АСУ-31 |
Пример: внешний ключ.
ФИО | Группа | Специальность | Название предмета | Часы | |
ФИО | Название предмета | Оценка |
|
|
Функции ключа
1. исключение дублирования значений в ключевых атрибутах;
2. упорядочивание строк таблицы (возрастание, убывание значений ключевых атрибутов, смешанное упорядочивание: по одним – возрастание, по другим - убывание);
3. ускорение работы со сроками таблицы;
4. организация связывания таблиц.