Читайте также:
|
|
При создании форм, запросов, отчетов, страниц доступа к данным на основе взаимосвязанных таблиц производится объединение их записей: объединяется каждая запись из одной таблицы с каждой записью из другой таблицы при условии равенства значений в поле связи. Рассмотрим пример объединения записей таблиц товар и поставка_план по полю код_тов. Таблица поставка_план содержит план отгрузки товаров, заданный в спецификациях договоров. Каждая запись этой таблицы представляет один из товаров, который должен быть отгружен в указанные сроки покупателю. Рассматриваемые таблицы находятся в отношении один-ко-многим. Поле код_тов является уникальным ключом в таблице товар. В таблице поставка_план значения этого поля повторяются во многих записях. На рисунке 5.8 показан пример заполнения таблиц. При объединении (по умолчанию) записей по полю код_тов вследствие того, что таблицы находятся в отношении один-ко-многим, формируется таблица, в которой каждая строка подчиненной таблицы поставка_план объединяется с одной из строк таблицы товар.
Рисунок 5.7. Содержимое объединяемых таблиц товар и план_поставки
Если для некоторой записи, например, записи с кодом товара Т008 в таблице товар отсутствуют связанные записи в другой таблице — объединять запись не с чем — и в результат такая запись не включается. Именно по этой причине в результате объединения таблиц товар и поставка_план отсутствуют записи о товарах, не представленных в плане поставки, а также записи о плановых поставках, в которых указан товар, отсутствующий в таблице товар.
Для каждой связи двух таблиц могут быть указаны и другие способы объединения записей по ключу связи. Всего их три:
1. Объединение только тех записей, в которых связанные поля обеих таблиц совпадают (INNER JOIN).
2. Объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из первой таблицы, для которых нет связанных во второй, с пустой записью второй таблицы (LEFT JOIN).
3. Объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из второй таблицы, для которых нет связанных в первой, с пустой записью первой таблицы (RIGHT JOIN).
Любой из перечисленных способов объединения может быть выбран для связи вне зависимости от того, находятся связываемые таблицы в отношениях 1:1, 1:М или тип отношения не может быть определен системой.
Существует три способа объединения данных. В окне Изменение связей есть кнопка Объединение. При нажатии этой кнопки появится окно Параметры объединения в нем может быть выбран способ объединения. По умолчанию определяется первый. (Рисунок 5.8.)
Рисунок 5.8. Окно выбора способа объединения связываемых таблиц
Дата добавления: 2015-10-24; просмотров: 82 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Обеспечение целостности данных | | | Отображение записей подчиненных таблиц в главной таблице |