Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
19. ACCESS Связи между таблицами.docx
Скачиваний:
4
Добавлен:
27.09.2019
Размер:
54.57 Кб
Скачать

Добавление поля и создание связи из области "Список полей"

  1. В области Список полей в группе Доступные поля в другой таблицещелкните знак плюс (+) рядом с именем таблицы.

  2. Перетащите нужное поле из области Список полей в таблицу, открытую в режиме таблицы.

  3. Когда появится линия вставки, вставьте поле в нужное место.

Будет запущен мастер подстановок.

  1. Следуйте инструкциям мастера подстановок.

Поле будет отображено в таблице в режиме таблицы.

При перетаскивании поля из другой (несвязанной) таблицы и выполнении инструкций мастера подстановок между таблицей из области Список полей и таблицей, в которую было перетащено поле, автоматически создается связь "один-ко-многим". Эта связь, созданная приложением Access, по умолчанию не обеспечивает целостность данных. Чтобы обеспечить целостность данных, необходимо изменить связь. Дополнительные сведения см. в разделеИзменение связи между таблицами.

 К НАЧАЛУ СТРАНИЦЫ

Удаление связи между таблицами

Чтобы удалить связь между таблицами, нужно удалить линию связи в окне "Схема данных". Осторожно разместите курсор так, чтобы он указывал на линию связи, а затем щелкните ее. Выделенная линия связи станет жирной. Нажмите клавишу DEL. Имейте в виду, что при удалении связи для нее также удаляется поддержка целостности данных, если она была включена. После этого Access не предотвращает в автоматическом режиме создание потерянных записей на стороне отношения "многие".

  1. На вкладке Работа с базами данных в группе Схема данных щелкните элемент Схема данных.

Откроется окно "Схема данных". Если в базе данных еще не определены связи и окно "Схема данных" вызывается впервые, откроется диалоговое окноДобавление таблицы. В этом случае нажмите в нем кнопку Закрыть.

  1. На вкладке Конструктор в группе Связи щелкните Все связи.

Появятся все таблицы со связями, а также соответствующие линии.

  1. Щелкните линию связи, которую требуется удалить. При выделении линия связи становится толще.

  2. Нажмите клавишу DEL

-или-

Щелкните правой кнопкой мыши и выберите команду Удалить.

  1. При этом может появиться сообщение Подтвердите удаление выделенной связи из базы данных. Нажмите кнопку Да.

 ПРИМЕЧАНИЕ.   Если таблица, задействованная в связи, используется другим лицом или процессом либо находится в открытом объекте базы данных (например, в форме), эту связь удалить нельзя. Перед удалением связи необходимо закрыть все открытые объекты, использующие таблицы.

 К НАЧАЛУ СТРАНИЦЫ

Изменение связи между таблицами

Чтобы изменить связь между таблицами, нужно сначала выбрать ее в окне "Схема данных". Осторожно разместите курсор так, чтобы он указывал на линию связи, а затем щелкните ее. Выделенная линия связи станет жирной. Когда линия связи будет выделена, дважды щелкните ее или выберите пунктИзменить связи в группе Сервис на вкладке Конструктор. Будет открыто диалоговое окно Изменение связей.

Внесите изменения в диалоговом окне Изменение связей.

  1. На вкладке Работа с базами данных в группе Схема данных щелкните элемент Схема данных.

Откроется окно "Схема данных". Если в базе данных еще не определены связи и окно "Схема данных" вызывается впервые, откроется диалоговое окноДобавление таблицы. Нажмите в нем кнопку Закрыть.

  • На вкладке Конструктор в группе Связи щелкните Все связи.

  1. Появятся все таблицы со связями, а также соответствующие линии.

  2. Щелкните линию связи, которую требуется изменить. При выделении линия связи становится толще.

  3. Дважды щелкните линию связи.

  4. Внесите изменения и нажмите кнопку ОК.

С помощью диалогового окна Изменение связей можно изменить связь между таблицами (например, таблицы, запросы или поля на любой стороне связи). Можно также задать тип соединения или включить обеспечение целостности данных и выбрать каскадный параметр. Дополнительные сведения о типе соединения и его использовании см. в разделе Указание типа соединения. Дополнительные сведения об обеспечении целостности данных и выборе каскадного параметра см. в разделе Обеспечение целостности данных.

УКАЗАНИЕ ТИПА СОЕДИНЕНИЯ

При создании связи между таблицами в конструкторы запросов поступают сведения о ней. Например, если после создания связи между двумя таблицами впоследствии создается запрос, в котором используются эти таблицы, в Access автоматически выбираются соответствующие поля по умолчанию на основе полей, указанных в связи. Можно переопределить в запросе эти исходные значения по умолчанию, но значения из связи часто оказываются правильными. Поскольку сопоставление и сбор данных из нескольких таблиц часто приходится выполнять во всех базах данных, за исключением самых простых, указание значений по умолчанию путем создания связей может сэкономить время и оказаться очень полезным.

С помощью запроса к нескольким таблицам можно скомбинировать данные из них, сопоставив значения в общих полях. Операция сопоставления и комбинирования называется соединением. Предположим, например, что требуется отобразить заказы клиентов. Для этого можно создать запрос, соединяющий таблицы "Клиенты" и "Заказы" по полю "Код клиента". Результаты запроса будут содержат сведения о клиенте и заказе только для строк с соответствующим значением.

Для каждой связи можно задать тип соединения. Тип соединения сообщает Access, какие записи включить в результат запроса. Например, снова рассмотрим запрос, объединяющий таблицы "Клиенты" и "Заказы" по общим полям, представляющим поле "Код клиента". При использовании типа соединения по умолчанию (называемого внутренним соединением) запрос возвращает только те строки таблиц "Клиенты" и "Заказы", в которых общие поля (также называемые связанными полями) совпадают.

Предположим, в результаты требуется включить всех клиентов — даже тех, которые еще не сделали ни одного заказа. Для этого нужно изменить тип соединения с внутреннего на внешний. Левое внешнее соединение возвращает все строки таблицы с левой стороны связи и только совпадающие строки таблицы с правой стороны. При использовании правого внешнего соединения возвращаются все строки с правой стороны связи и только совпадающие с левой.

 ПРИМЕЧАНИЕ.   В этом случае термины "слева" и "справа" относятся к положению таблиц в диалоговом окне Изменение связей, а не в окне "Схема данных".

Следует определить, какие результаты наиболее часто требуются от запроса, соединяющего таблицы в конкретной связи, и в соответствии с этим выбрать тип соединения.