9         Соединения таблиц

9.1       Внутреннее соединение

Внутреннее соединение двух таблиц по одному полю в реляционной базе данных строится на основе отношения "один-ко-многим".

1.          Каждая таблица "один" должна иметь первичный ключ с уникальными значениями. Отсутствие повторений значений поля или полей первичного ключа в таблице Access устанавливает автоматически.

2.          Отношение "многие-ко-многим" реализуйте на основе промежуточной таблицы, которая связана с каждой из двух таблиц отношением "многие-к-одному". Для обеих связей промежуточная таблица будет находиться со стороны "многие".

Необходимо извлечь повторяющиеся данные в новую таблицу и связать ее с таблицей, из которой эти данные были получены, отношением "многие-к-одному". Основная цель — однозначно определить извлеченные данные. Часто для этого приходится использовать первичный ключ, состоящий из нескольких полей. Для автоматизации работы по нахождению и извлечению повторяющейся информации можно использовать Мастер по анализу таблиц Microsoft Access. Этот мастер запускается при выборе команды меню Сервис, Анализ, Таблица (Tools, Analysis, Table).

9.2       Внешнее соединение

Внешние соединения бывают левыми или правыми. Запрос, в котором участвуют таблицы с левым внешним соединением (LEFT JOIN или *= в SQL), выводит все записи таблицы "один", в независимости от того, имеются ли соответствующие им записи в таблице "многие". И наоборот, запрос, в котором участвуют таблицы с правым внешним соединением (RIGHT JOIN или =* в SQL), выводит все записи таблицы "многие", в независимости от того, имеются ли соответствующие им записи в таблице "один".

Последнее изменение: Четверг, 11 августа 2011, 12:32