Создает Связь между Таблицами типа "один-ко-многим".
SET SKIP TO [TableAlias1 [, TableAlias2] ...] |
Параметры
- TO TableAlias1[, TableAlias2] ...
-
Определяет алиасы привязываемых, дочерних таблиц. Данные таблицы привязываются по типу "один-ко-многим " относительно родителькой таблицы. Для перечисления алиасов привязываемых таблиц используется запятая. В командах, для которых поддерживается диапазон выполнения (ALL, NEXT), (DISPLAY, LIST, и другие, аналогичные), записи из родительской таблицы повторяются для соответствующих записей из дочерних таблиц.
Используйте команду SET SKIP TO, без параметров, для обнуления множественной связи между таблицами, для таблицы, открытой в текущей рабочей области. Данная команда обнуляет только "множественную" связь; для разрыва связи типа "один-к-одному" - используется команда SET RELATION TO (без параметров), выполненная для родительской таблицы.
Комментарии
При помощи команды SET RELATION, можно установить связь между таблицами данных, открытыми в различных рабочих областях. При перемещении указателя записи в родительской таблице (главной в связи), перемещается указатель записи в дочерней таблице (зависимой в связи) на первую, соответствующую запись. Реляционное выражение, заданное в команде SET RELATION определяет синхронное перемещение указателей записей в связанных таблицах. Для типа связи "один-к-одному" для каждой записи родительской таблицы находится (устанавливается указатель на) запись из дочерней таблицы. Если соответствующая запись не найдена, то указатель устанавливается на конец файла, таблицы.
Часто возникают ситуации, когда несколько записей в дочерней таблице соответствуют одной записи родительской таблицы. Команда SET SKIP устанавливает множественное отношение между рассматриваемыми таблицами. Пока указатель записи в родительской таблице остается на месте, указатель записей в дочерней таблице перемещается только в соответствующем диапазоне, ограничен в перемещении.
Для создания отношения типа "один-ко-многим", сначала установите простое отношение между таблицами, командой SET RELATION. За тем, выполните команду SET SKIP - для преобразования обычного отношения в тип "один-ко-многим".
Пример
В представленном ниже примере: для каждой записи первой таблицы определяются все соответствующие записи в двух других таблицах. Сначала связываются две дочерние таблицы, в которых одна является дочерней, а другая родительской. При сканировании первой таблицы определяются соответствующие записи во второй таблице, а благодаря второй связи - определяется запись в третьей таблице. Команда SET SKIP работает для главной родительской таблицы. Установка команды SET SKIP для связи между дочерними таблицами - неэффективна. Благодаря указанному мехзанизму устанавливаются связи для всех соответствующих записей, содержащих необходимые данные.
![]() | |
---|---|
CLOSE DATABASES |