- •Глава 10. Система управления базами данных access 2007
- •10.1 Компоненты экономических информационных систем. Классификация и основные свойства единиц информации
- •10.2 Понятие предметной области
- •10.3 Понятия о базах данных и системах управления ими. Классификация баз данных
- •10.4 Модель данных. Основные виды моделей. Сравнение моделей данных
- •10.5 Функциональные зависимости и ключи.
- •10.6 Понятие нормализации отношений. Нормальные формы
- •10.7 Реляционная база данных и ее особенности. Виды связей между реляционными таблицами
- •10.8 Таблицы и их структура. Типы полей и их свойства. Контроль вводимых данных
- •10.9 Операции над таблицами. Фильтрация данных. Установление связей между таблицами. Обеспечение целостности данных
- •10.10 Запросы к базе данных и их использование. Виды запросов. Технология создания
- •10.11 Запросы к базе данных с использованием языка sql. Извлечение данных. Функции агрегирования
- •10.12 Запросы к базе данных с использованием языка sql. Извлечение данных из нескольких таблиц. Соединения таблиц
- •10.13 Запросы к базе данных с использованием языка sql. Qsl-запросы на изменение. Подчиненный запрос
- •10.14 Формы, их виды. Структура формы. Свойства формы. Технология создания форм. Элементы управления и их использование в формах
- •10.15 Отчеты, их назначение и использование. Виды отчетов. Структура отчета. Технология создания
- •10.17 Макросы и их конструирование
10.7 Реляционная база данных и ее особенности. Виды связей между реляционными таблицами
Реляционная база данных – это совокупность взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного типа. Строка таблицы содержит данные об одном объекте (например, товаре, клиенте), а столбцы таблицы описывают различные характеристики этих объектов – атрибутов (например, наименование, код товара, сведения о клиенте). Записи, т.е. строки таблицы, имеют одинаковую структуру – они состоят из полей, хранящих атрибуты объекта. Каждое поле, т.е. столбец, описывает только одну характеристику объекта и имеет строго определенный тип данных. Все записи имеют одни и те же поля, только в них отображаются различные информационные свойства объекта.
В реляционной базе данных каждая таблица должна иметь первичный ключ- поле или комбинация полей, которые единственным образом идентифицируют каждую строку таблицы. Если ключ состоит из нескольких полей, он называется составным. Ключ должен быть уникальным и однозначно определять запись. По значению ключа можно отыскать единственную запись. Ключи служат также для упорядочивания информации в БД.
Таблицы реляционной БД должны отвечать требованиям нормализации отношений. Нормализация отношений – это формальный аппарат ограничений на формирование таблиц, который позволяет устранить дублирование, обеспечивает непротиворечивость хранимых в базе данных, уменьшает трудозатраты на ведение базы данных.
Целостность данных является одним из самых важных требований, предъявляемых к базам данных.
Ограничения целостности в реляционной модели данных обеспечиваются, во-первых, исключением дублирования кортежей в отношениях, которые являются информационными образами конкретных объектов предметной области. Это условие называется требованием целостности сущностей. Во-вторых, обеспечиваются целостность по ссылкам. Это требование заключается в следующем: либо для каждого значения внешнего ключа, появляющегося в ссылающемся отношении, в отношении, на которое ведет ссылка (то есть в том, где соответствующий атрибут является первичным ключом) должен быть кортеж с тем же значением первичного ключа, либо значение внешнего ключа в первом отношении должно быть полностью неопределенным (ни на что не указывать).
СУБД не допускает появления некорректных значений внешнего ключа при обновлении ссылающегося отношения. При удалении же кортежа, на который ведет ссылка, возможны три подхода:
запрет такого удаления;
изменение значений внешнего ключа во всех ссылающихся кортежах на неопределенное;
каскадное удаление, когда при удалении кортежа из отношения, на который ведется ссылка, из ссылающегося отношения автоматически удаляются все ссылающиеся кортежи.
Целостность реляционной модели данных определяется двумя общими правилами.
Целостность по сущностям. Не допускается, чтобы какой-либо атрибут, участвующий в первичном ключе базового отношения, принимал неопределенные значения. Базовым отношением называют независимое именованное отношение. Мотивировка этого правила определяется тем, что базовые отношения соответствуют сущностям в реальном мире, а следовательно, отличимы, т.е. имеют уникальную идентификацию, В реальной же модели функцию уникальной идентификации выполняют первичные ключи, и, таким образом, ситуация, когда первичный ключ принимает неопределенное значение, является противоречивой и говорит о том, что некоторая сущность не обладает индивидуальностью, а значит, не существует. Отсюда и название - целостность по сущностям.
Целостность по ссылкам. Каждый атрибут принимает лишь допустимые значения, принадлежащие тому домену, в котором атрибут определен. Ограничения целостности доменов обеспечивают проверку значения не только на принадлежность допустимому диапазону или списку допустимых значений, но и на смысл значений.
Над реляционными таблицами возможны следующие операции:
объединение таблиц с одинаковой структурой. Результат – общая таблица: сначала первая, затем вторая (конкатенация);
пересечение таблиц с одинаковой структурой. Результат – выбираются те записи, которые находятся в обеих таблицах;
вычитание таблиц с одинаковой структурой. Результат – выбираются те записи, которых нет в вычитаемом;
выборка (горизонтальное подмножество). Результат – выбираются записи, отвечающие определенным условиям;
проекция (вертикальное подмножество). Результат – отношение, содержащее часть полей из исходных таблиц;
декартово произведение двух таблиц Записи результирующей таблицы получаются путем объединения каждой записи первой таблицы с каждой записью другой таблицы.
Реляционные таблицы могут быть связаны друг с другом, следовательно, данные могут извлекаться одновременно из нескольких таблиц. Таблицы связываются между собой для того, чтобы, в конечном счете, уменьшить объем БД. Связь каждой пары таблиц обеспечивается при наличии в них одинаковых столбцов.
Существуют следующие типы информационных связей:
один к одному;
один ко многим;
многие ко многим.
Связь один к одному предполагает, что одному атрибуту первой таблицы соответствует только один атрибут второй и таблицы наоборот.
Связь один ко многим предполагает, что одному атрибуту первой таблицы соответствует несколько атрибутов второй и таблицы.
Связь многие ко многим предполагает, что одному атрибуту первой таблицы соответствует несколько атрибутов второй таблицы и наоборот.