- •Базы данных
- •Введение
- •Часть 1. Проектирование баз данных
- •1.1. Некоторые понятия и определения
- •1. 2. Модели данных
- •1.2.1. Иерархическая модель данных
- •1.2.2. Сетевая модель данных
- •1.2.3. Реляционная модель данных Основные определения
- •Типы связей между отношениями
- •1.3. Классификация баз данных
- •1.4. Цели проектирования баз данных
- •1.5. Проектирование баз данных с использованием универсального отношения
- •1.5.1. Универсальное отношение
- •1.5.2. Проблемы, вызываемые использованием универсального отношения
- •Проблема вставки
- •Проблемы обновления
- •Проблемы удаления
- •1.5.3. Нормальная форма Бойса -Кодда
- •Функциональные зависимости
- •Возможный ключ и детерминант
- •Общий подход к декомпозиции
- •Анализ исходных аномалий
- •1.5.4. Возможные потери фз при декомпозиции
- •1.5.5. Избыточные функциональные зависимости
- •Приемы удаления избыточных фз
- •Минимальное покрытие
- •Модернизированный алгоритм проектирования бд
- •1.6. Метод er - проектирования
- •1.6.1. Сущности и связи
- •1.6.2. Степень связи
- •1.6.3. Переход от диаграмм er – типа к отношениям
- •Предварительные отношения для бинарных связей степени 1:1
- •Предварительные отношения для бинарных связей степени 1:n.
- •Предварительные отношения для бинарных связей степени n:m
- •1.6.4. Дополнительные конструкции, используемые в er - методе
- •Необходимость связей более высокого порядка
- •Предварительные отношения для трехсторонних связей
- •Использование ролей
- •1.6.5. Последовательность проектирования бд при использовании er- метода
- •1.6.6. Проверка отношений на завершающейся фазе проектирования
- •1.7. Другие нормальные формы
- •1.8. Контрольные вопросы
- •Часть 2. Специальные аспекты работы с базами данных
- •2.1. Защита данных в базе
- •2.2.1. Общие вопросы защиты данных
- •2.2.2. Реализация защиты данных в различных системах
- •Управление доступом в sql
- •Реализация системы защиты в ms sql Server
- •2.2. Обеспечение целостности данных
- •2.3. Организация параллельных процессов обработки данных
- •2.4. Восстановление бд
- •2.4.1. Уровни восстановления.
- •2.4.2. Восстановление и логический элемент работы
- •Требования к лэр
- •2.4.3. Промежуточное восстановление
- •2.4.4. Длительное восстановление
- •2.5. Математический аппарат, используемый при работе с реляционной базой данных
- •2.5.1. Теоретико-множественные операции реляционной алгебры
- •2.5.2. Специальные операции реляционной алгебры
- •2.6. Контрольные вопросы
- •Часть 3. Разработка приложений для работы с базами данных
- •3.1. Краткий обзор субд
- •3.2. Субд Access
- •3.2.1. Вводные замечания
- •3.2.2. Создание базы данных
- •3.2.3. Создание и работа с таблицами
- •3.2.4. Работа с запросами
- •3.2.5. Создание форм
- •3.2.6. Отчеты в Access
- •3.2.7. Макросы в Access
- •Преобразование макросов в программы на Visual Basic
- •3.2.8. Работа с внешними данными
- •3.3. Программирование в Access
- •3.3.1. Вводные замечания
- •3.3.2. Объявление переменных
- •3.3.3. Константы
- •3.3.4. Тип данных Variant
- •3.3.5. Пользовательские типы данных
- •3.3.5.Операторы, команды и выражения в vba
- •3.3.7. Процедуры vba
- •3.3.8. Управляющие структуры в vba
- •Работа с управляющими структурами
- •3.3.9. Объекты в Access
- •3.3.10. Классы в Access
- •3.3.11. Работа с ошибками в vba
- •3.4.Работа в ms sql –Server
- •3.4.1. Основные количественные показатели системы sql-сервер
- •3.4.2. Создание баз данных
- •3.4.3. Создание таблицы
- •3.4.4. Извлечение данных
- •3.4.5. Добавление данных
- •3.4.6. Изменение данных
- •3.4.7. Удаление данных
- •3.5. Контрольные вопросы
- •Цитированная литература
- •Оглавление
- •Часть 1. Проектирование баз данных 3
- •Часть 2. Специальные аспекты работы с базами данных 71
- •Часть 3. Разработка приложений для работы с базами данных 114
1.6.2. Степень связи
Важной характеристикой связи между двумя (и более) сущностями является степень связи. Это понятие рассмотрим на расширенном примере данных, приведенных на рис. 17.
ПРЕПОДАВАТЕЛЬ ЧИТАЕТ ДИСЦИПЛИНА
П1 Д1
П2 Д2
П3 Д3
П4 Д4
а) Степень связи равна 1:1 и класс принадлежности ни одной из сущностей не является обязательным.
ПРЕПОДАВАТЕЛЬ ЧИТАЕТ ДИСЦИПЛИНА
П1 Д1
П2 Д2
П3 Д3
Д4
б) Степень связи равна 1:1 и класс принадлежности сущности ПРЕПОДАВАТЕЛЬ является обязательным.
ПРЕПОДАВАТЕЛЬ ЧИТАЕТ ДИСЦИПЛИНА
П1 Д1
П2 Д2
П3 Д3
П4
в) Степень связи равна 1:1 и класс принадлежности сущности ДИСЦИПЛИНА является обязательным.
ПРЕПОДАВАТЕЛЬ ЧИТАЕТ ДИСЦИПЛИНА
П1 Д1
П2 Д2
П3 Д3
П4 Д4
г) Степень связи равна 1:1 и класс принадлежности обоих сущностей является обязательным.
Рис. 17. Различные классы принадлежности для случая
степени связи 1:1.
Рис. 17 иллюстрирует все возможные формы диаграммы ER - экземпляров, которые могли бы существовать между сущностями ПРЕПОДАВАТЕЛЬ и ДИСЦИПЛИНА в том случае, когда степень связи равна 1:1. Каждая диаграмма представляет собственный набор возможных правил функционирования учебного заведения. Только одна из этих диаграмм может быть истинной для заведения в каждый момент времени. Перечень правил, которых следует придерживаться для соответствия каждой диаграмме, представленной на рис. 17 формулируется следующим образом:
Рис. 17, а. Каждый преподаватель читает не более одной дисциплины, и каждая дисциплина читается не более чем одним преподавателем. Допускается наличие преподавателей, не читающих ни одной дисциплины, а также дисциплин не читаемых вовсе. Таким образом, ни один преподаватель не должен читать более одной дисциплины, и на одна дисциплина не должна читаться более чем одним преподавателем.
Рис. 17,б. Каждый преподаватель читает только одну дисциплину, а каждая дисциплина читается не более чем одним преподавателем. Допускается наличие дисциплин не читаемых вовсе.
Рис. 17, в. Каждый преподаватель читает не более одной дисциплины, а каждая дисциплина читается только одним преподавателем. Допускается наличие преподавателей, не читающих ни одной дисциплины.
Рис. 17, г. Каждый преподаватель читает только одну дисциплину, и каждая дисциплина читается только одним преподавателем.
Тот факт, что каждый экземпляр сущности, расположенный как в левой, так и в правой частях диаграммы, связывается максимально с одним экземпляром сущности, расположенным в противоположной части диаграммы, дает основание определить каждую из диаграмм экземпляров, приведенных на рис. 17, как имеющую степень связи 1:1.
Различия между диаграммами, показанными на рис.17, являются следствием того, должны или не должны все экземпляры сущности участвовать в связи. На рис.17,а не выставляется требование участия всех экземпляров обоих сущностей в связи. На рис.17,б все экземпляры преподавателей обязательно должны участвовать в связи, а экземпляры дисциплин - не обязательно. На рис.17,в требуется участие в связи каждого экземпляра дисциплины и допускается неучастие некоторых экземпляров преподавателей. На рис.17,г требование обязательного участия в связи накладывается на все экземпляры обоих сущностей.
Рис.18 иллюстрирует возможность более компактной формы представления информации, приведенной на рис.17.
1 1
нп…. нд ….
а)
1 1
ЧИТАЕТ ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА
нп…. нд…
б)
1 1
ЧИТАЕТ ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА
нп…. нд…
в)
1 1
ЧИТАЕТ ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА
нп…. нд…
г)
Рис. 18. Диаграммы ER-типа, соответствующие
диаграммам экземпляров, приведенных на рис.17.
Если экземпляры данной сущности должны участвовать в связи, то участие называется обязательным и этот факт отмечается помещением маленького сплошного кружка в блок, смежный с блоком сущности. Если экземпляры данной сущности могут не участвовать в связи, то участие называется необязательным и кружок внутрь маленького блока не заносится. Класс принадлежности сущности должен быть либо обязательным, либо не обязательным и определяется правилами, регламентирующим деятельность организации. Единицы в обеих частях связей, показанных на рис.18, говорят о том, что степени всех связей относятся к типу 1:1.
В диаграммах ER-типа непосредственно под блоком каждой сущности выписывается и выделяется подчеркиванием ключ этой сущности: нп ( номер-преподавателя) для сущности ПРЕПОДАВАТЕЛЬ и нд (номер-дисциплины) для сущности ДИСЦИПЛИНА. Точки, расположенные вслед за каждым из этих атрибутов, указывают на то, что никакие другие возможно имеющиеся атрибуты соответствующей сущности не могут быть частью ее ключа. Эти другие атрибуты будут добавлены после разработки отношений.
Ни одно из правил, регламентирующих работу организации и используемых при составлении диаграмм представленных на рис. 17 и 18, не допускает чтения преподавателем более одной дисциплины, а также чтение одной дисциплины более чем одним преподавателем. Для большинства учебных заведений дело обстоит иначе. Ниже приводятся другие наборы правил, принятых во многих учебных заведениях.
СЛУЧАЙ 1. Каждый преподаватель может читать одновременно несколько дисциплин, но каждая дисциплина читается не более чем одним преподавателем.
СЛУЧАЙ 2. Каждый преподаватель читает не более одной дисциплины, но каждая дисциплина может читаться сразу несколькими преподавателями.
СЛУЧАЙ 3. Каждый преподаватель может читать несколько дисциплин и каждая дисциплина может читаться несколькими преподавателями.
Каждый из этих случаев имеет несколько подвариантов, а именно класс принадлежности может быть обязательным или необязательным - для одной из двух, ни для одной или для обеих сущностей. Отметим, что случаи 1 и 2 симметричны по форме.