- •Оглавление
- •Предисловие
- •Основные понятия
- •1.1. База данных
- •Классификация баз данных
- •1.1.2. Структурные элементы базы данных
- •1.2. Виды моделей данных
- •1.2.1. Иерархическая модель данных
- •111Петрова и.Т. 112Никулин с.Л.
- •1.2.2. Сетевая модель данных
- •1.2.3. Реляционная модель данных
- •Студент
- •СессияНомерРезультат
- •Функциональные возможности субд
- •2.1. Общие сведения
- •Производительность субд
- •Обеспечение целостности данных на уровне базы данных
- •2.4. Обеспечение безопасности
- •Работа в многопользовательских средах
- •2.6. Импорт-экспорт
- •Доступ к данным посредством языка sql
- •2.7. Возможности запросов и инструментальные средства разработки прикладных программ
- •3. Основы технологии работы в субд
- •3.1. Команды для выполнения типовых операций
- •3.1.1. Типовая структура интерфейса
- •3.1.2. Команды для работы с файлами
- •3.1.3. Команды редактирования
- •3.1.4. Команды форматирования
- •3.1.5. Команды для работы с окнами
- •3.1.6. Система получения справочной информации
- •3.2. Обобщенная технология работы
- •3.2.1. Общее представление об этапах технологии
- •Создание структуры таблиц базы данных
- •Ввод и редактирование данных
- •Обработка данных, содержащихся в таблицах
- •3.2.5. Вывод информации из базы данных
- •Разработка инфологической модели и создание структуры реляционной базы данных
- •4.1. Организация данных
- •Целостность данных
- •Проектирование реляционной базы данных с использованием нормализации
- •Создание информационно-логической и логической моделей базы данных
- •Примеры решения задач средствами субд access
- •5.1. Проектирование и создание новой базы данных. Создание таблиц. Ввод записей и работа с данными таблицы. Создание межтабличных связей
- •5.2. Создание и открытие запросов
- •5.3. Создание форм и отчетов
- •5.4. Создание макросов. Обмен данными
- •6. Требования, предьявляемые к курсовой работе
- •6.1. Общие сведения
- •6.2. Содержание пояснительной записки к курсовой работе
- •6.3. Требования к оформлению пояснительной записки
- •7. Пример создания программы для курсовой работы
- •7.1. Постановка задачи
- •7.2. Создание er-модели
- •Арендатор
- •7.4. Описание технологии создания запросов
- •7.5. Создание форм
- •7.6. Создание отчетов
- •7.7. Создание кнопочной формы
- •Список рекомендуемой литературы
- •Варианты заданий
Целостность данных
Целостность данных означает систему правил, используемых в СУБД Accessдля поддержания связей между записями в связанных таблицах (таблиц, объединенных с помощью связи), а также обеспечивает защиту от случайного удаления или изменения связанных данных. Контролировать целостность данных можно, если выполнены следующие условия:
связанное поле (поле, посредством которого осуществляется связь) одной таблицы является ключевым полем или имеет уникальный индекс;
связанные поля имеют один тип данных. Здесь существует исключение. Поле счетчика может быть связано с числовым полем, если оно имеет тип Длинное целое;
обе таблицы принадлежат одной базе данных Access. Если таблицы являются связанными, то они должны быть таблицамиAccess. Для установки целостности данных БД, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из БД других форматов установить целостность данных невозможно.
Проектирование реляционной базы данных с использованием нормализации
Задача нормализации – построение рациональных схем отношений. Процедура нормализации строится на основе использования нормальных форм. Отношение находится в некоторой нормальной форме, если соответствует определенному набору требований (ограничений).
Суть метода состоит в последовательном переводе таблицы из одной нормальной формы в другую, причем каждая последующая устраняет определенный вид функциональной зависимости между полями таблицы. Всего в теории описаны шесть нормальных форм, на практике чаще всего применяются первые три.
Первая нормальная форма (1НФ) требует, чтобы все атрибуты отношения были атомарными (неделимыми). Так как требование первой нормальной формы является базовым требованием классической реляционной модели данных, считается, что исходное универсальное отношение уже соответствует этому требованию.
Вторая нормальная форма (2НФ). Отношение R находится во второй нормальной форме в том и только в том случае, когда находится в 1НФ и каждый неключевой атрибут полностью зависит от первичного ключа.
Третья нормальная форма (3НФ). Отношение R находится в третьей нормальной форме в том и только в том случае, когда находится в 2НФ и каждый неключевой атрибут нетранзитивно зависит от первичного ключа.
На практике третья нормальная форма схем отношений достаточна в большинстве случаев и приведением к третьей нормальной форме процесс проектирования реляционной БД обычно заканчивается.
Создание информационно-логической и логической моделей базы данных
Цель работы: разработать информационно-логическую модель реляционной БДДеканат; разработать логическую модель реляционной БДДеканат.
Выполнение и рекомендации:
1. Перед разработкой информационно-логической модели реляционной БД рассмотрим, из каких информационных объектов должна состоять эта БД. Можно выделить три объекта, которые не будут обладать избыточностью, — Студенты, Дисциплины и Преподаватели.
2. Представим состав реквизитов этих объектов в виде «название объекта (перечень реквизитов)»: Студенты (код студента, фамилия, имя, отчество, номер группы, дата рождения, стипендия, оценка), Дисциплины(код дисциплины, название дисциплины), Преподаватели (код преподавателя, фамилия, имя, отчество, дата рождения, телефон, заработная плата).
3. Рассмотрим связь между объектами СтудентыиДисциплины.Студент изучает несколько дисциплин, что соответствует многозначной связи и отражено на рис. 4.1 двойной стрелкой. Понятно, что каждая дисциплина изучается множеством студентов. Это тоже многозначная связь, обозначаемая двойной стрелкой (связь «один» обозначена одинарной стрелкой). Таким образом, связь между объектами СтудентыиДисциплины — Многие-ко-многим (М : N).
Студенты
Дисциплины
Преподаватели
Рис. 4.1. Типы связей между объектами Студенты, Дисциплины и Преподаватели
Множественные связи усложняют управление БД, например, в СУБД Accessпри множественных связях нельзя использоватьМеханизм каскадного обновления. Поэтому использовать такие связи нежелательно и нужно строить реляционную модель, не содержащую связей типа Многие-ко-многим.ВAccessдля контроля целостности данных с возможностью каскадного обновления и удаления данных необходимо создать вспомогательный объект связи, который состоит из ключевых реквизитов связываемых объектов и который может быть дополнен описательными реквизитами. В нашем случае таким новым объектом для связи служит объектОценки,реквизитами которого являются код студента, код дисциплины и оценки. Каждый студент имеет оценки по нескольким дисциплинам, поэтому связь между объектами Студенты и Оценкибудет Один-ко-многим(1 : М). Каждую дисциплину сдает множество студентов, поэтому связь между объектами Дисциплины и Оценкитакже будет Один-ко-многим(1 : М). В результате получаем информационно-логическую модель БД, приведенную на рис. 4.2.
Студенты
Дисциплины
Преподаватели
Оценки
Рис. 4.2. Информационно-логическая модель реляционной базы данных
4. В реляционной БД в качестве объектов рассматриваются отношения, которые можно представить в виде таблиц. Таблицы между собой связываются посредством общих полей, т.е. одинаковых по форматам и, как правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие поля надо ввести в таблицы для обеспечения связности данных. В таблицах Студенты и Оценки таким полем будет «Код студента», в таблицах Дисциплины и Оценки — «Код дисциплины», в таблицах Преподаватели и Дисциплины — «Код дисциплины». Выбор цифровых кодов вместо фамилий или названий дисциплин обусловлен меньшим объемом информации в таких полях: например, число «2» по количеству символов значительно меньше слова «математика». В соответствии с этим логическая модель БД представлена на рис. 4.3, где жирными буквами выделены ключевые поля.
Студенты Оценки Дисциплины Преподаватели
Код студента |
1:M |
Код студента |
1:M |
Код дисциплины |
1:M |
Код дисциплины |
Фамилия |
Код дисциплины |
Название дисциплины |
|
Код преподавателя | ||
Имя |
|
|
|
Фамилия | ||
Оценки |
|
|
|
Имя | ||
Отчество |
|
|
|
|
Отчество | |
Номер группы |
|
|
|
|
Преподаваемая дисциплина | |
Дата рождения |
|
|
|
|
Телефон | |
Стипендия |
|
|
|
|
| |
|
|
|
Рис. 4.3. Логическая модель базы данных