Создание межтабличных связей.
Определение в базе данных связей между таблицами
После создания различных таблиц, содержащих данные, относящиеся к различным аспектам базы данных, разработчик должен продумать, каким образом Microsoft Access будет объединять эти данные при их извлечении из базы данных. Первым шагом при этом является определение связей между таблицами. После этого становится возможным создание запросов, форм и отчетов, в которых выводятся данные из нескольких таблиц сразу. После этого становится возможным создание запросов, форм и отчетов, в которых выводятся данные из нескольких таблиц сразу. Ниже приводится пример многотабличной формы.
Вся необходимая работа по созданию реляционных отношений происходит в окне Схема данных, которое открывается командой Сервис-Схема данных или с помощью кнопки на панели инструментов (рассмотрим на лаб. раб).
Образовавшаяся межтабличная связь отображается в окне Схема данных в виде линии, соединяющей два поля разных таблиц. При этом одна из таблиц считается главной, а другая – связанной. Главная – это та таблица, которая участвует в связи своим ключевым полем (название этого поля на схеме данных отображается полужирным шрифтом).
Для настройки свойств связи надо в окне Схема данных выделить линию, соединяющую поля двух таблиц, щелкнуть на ней правой кнопкой мыши, после чего выбрать в открывшемся контекстном меню пункт Изменить связь. В появившемся диалоговом окне показаны названия связанных таблиц и имена полей, участвующих в связи, а также приведены элементы управления для обеспечения условий целостности данных.
Целостность данных - означает систему правил, используемых в Microsoft Access для поддержания связей между записями в связанных таблицах, а также обеспечивает защиту от случайного удаления или изменения связанных данных. Установить целостность данных можно, если выполнены следующие условия.
· Связанное поле главной таблицы является ключевым полем или имеет уникальный индекс.
· Связанные поля имеют один тип данных. Здесь существует два исключения. Поле счетчика может быть связано с числовым полем, если в последнем в свойстве Размер поля (Field Size) указано значение «Длинное целое». А также поле счетчика можно связать с числовым полем, если и в обеих ячейках свойства Размер поля (Field Size) задано значение «Код репликации».
· Обе таблицы принадлежат одной базе данных Microsoft Access. Если таблицы являются связанными, то они должны быть таблицами Microsoft Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.
Установив целостность данных, необходимо следовать следующим правилам:
· Невозможно ввести в поле внешнего ключа связанной таблицы значение, не содержащееся в ключевом поле главной таблицы. Однако в поле внешнего ключа возможен ввод пустых значений, показывающих, что записи не являются связанными. Например, нельзя сохранить запись, регистрирующую заказ, сделанный несуществующим клиентом, но можно создать запись для заказа, который пока не отнесен ни к одному из клиентов, если ввести пустое значение в поле «Код Клиента».
· Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице. Например, невозможно удалить запись из таблицы «Сотрудники», если в таблице «Заказы» имеются заказы, относящиеся к данному сотруднику.
· Невозможно изменить значение ключевого поля в главной таблице, если существуют записи, связанные с данной. Например, невозможно изменить код сотрудника в таблице «Сотрудники», если в таблице «Заказы» имеются заказы, относящиеся к этому сотруднику.
Чтобы наложить эти правила на конкретную связь, при ее создании следует установить флажок Обеспечение целостности данных. Если данный флажок установлен, то любая попытка выполнить действие, нарушающее одно из перечисленных выше правил, приведет к выводу на экран предупреждения, а само действие выполнено не будет.
Чтобы преодолеть ограничения на удаление или изменение связанных записей, сохраняя при этом целостность данных, следует установить флажки Каскадное обновление связанных полей и Каскадное удаление связанных полей. Если установлен флажок Каскадное обновление связанных полей, то при изменении ключевого поля главной таблицы автоматически изменяются и соответствующие значения связанных записей. Если установлен флажок Каскадное удаление связанных полей, то при удалении записи в главной таблице удаляются и все связанные записи в подчиненной таблице.
Если установлен только флажок Обеспечение целостности данных, то удалять данные из ключевого поля главной таблицы нельзя. Если вместе с ним включены флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей, то операции редактирования и удаления данных в ключевом поле главной таблицы разрешены, но сопровождаются автоматическими изменениями в связанной таблице.
Таким образом, смысл создания реляционных связей между таблицами состоит, с одной стороны, в защите данных, а с другой стороны – в автоматизации внесения изменений сразу в несколько таблиц при изменениях в одной таблице.
- Основные понятия баз данных. Базы данных, структура простейшей бд, субд.
- Реляц. Модель некоторой конкретной области представляет собой набор
- Свойства полей бд.
- 2.1.1. Этапы проектирования базы данных
- 1 Определение цели создания базы данных
- 2 Определение таблиц, которые должна содержать база данных
- 3 Определение необходимых в таблице полей
- 4 Задание индивидуального значения каждому полю
- 5 Определение связей между таблицами
- Типы данных. Базы данных Microsoft Access работают со следующими типами данных:
- Безопасность баз данных.
- Режимы работы с базами данных.
- Объекты баз данных.
- Разработка структуры базы данных.
- 3.Создание базы данных
- 3.1. Создание базы данных с помощью мастера
- 3.2. Создание базы данных без помощи мастера
- Работа с таблицами.
- Создание таблицы
- 1.Создание новой пустой таблицы
- 2.Создание новой таблицы с использованием существующих данных
- Открытие таблицы
- Определение ключа
- Определение типа данных
- Поля и выбор типов данных
- 1. Данные, используемые в поле таблицы
- Работа с ключами и индексами Типы используемых ключевых полей
- Создание и изменение ключевых полей
- Удаление ключевых полей
- Создание межтабличных связей.
- Определение связей между таблицами
- Нормализация бд
- Фильтрация данных
- Результат фильтрации
- Работа с запросами.
- Отбор данных с помощью запроса
- Часто используемые операторы и функции
- Запросы на выборку и их использование
- Создание простого запроса на выборку с помощью мастера
- Запросы на изменение и их использование
- Запросы с параметрами и их использование
- Перекрестные запросы и их использование
- Запросы sql и их использование
- Вычисления в запросе
- Открытие и запуск запроса
- Упорядочение записей в результирующей таблице.
- Работа с формами. Автоформы.
- Разделы формы
- Создание форм с помощью мастера.
- Работа с отчетами.
- Настройка отчета
- Разделы отчета
- Последовательность макрокоманд
- Группа макросов
- Условные макрокоманды
- Создание макроса
- Открытие макроса
- Использование условий в макросе
- Запуск макроса
- Работа с макросами.
- 1.Сущность макросов.
- 2. Создание и выполнение макросов.
- 2.1. Создание макросов.
- 2.2. Сохранение макросов.
- 2.3. Выполнение макроса.
- 3. Редактирование макросов
- 4. Копирование макросов.