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

Данные в одной таблице часто связаны с данными в другой таблице. Например, у вас может быть таблица Учителя и таблица Класс, а таблица Класс может иметь отношение подстановки к таблице Учителя, чтобы показать, какой учитель ведет класс. Можно использовать столбец подстановки для отображения данных из таблицы Преподаватели. Это обычно называется столбцом для поиска.

Определение связи

Можно создать несколько типов связей из одной таблицы к другой (или между таблицей и самой собой). Каждая таблица может иметь связь с несколькими таблицами, и каждая таблица может иметь несколько связей с другой таблицей. Ниже приведены некоторые распространенные типы связей:

  • Многие к одному . В этом типе связи каждая строка в таблице A может совпадать с несколькими строками в таблице B, но каждая строка в таблице B может соответствовать только одной строке в таблице A. Например, класс имеет один класс. Это наиболее распространенный тип связи и отображается в списке столбцов как столбец поиска
  • Один ко многим . В этом типе связи каждая строка в таблице B может совпадать с несколькими строками в таблице A, но каждая строка в таблице A может соответствовать только одной строке в таблице B. Например, один учитель учит много классов.
  • Многие ко многим — в этом типе отношения каждая строка в таблице A может соответствовать нескольким строкам в таблице B, и наоборот, каждая строка в таблице B также может соответствовать нескольким строкам в таблице A. Например, учащиеся посещают много классов, и в каждом классе имеется несколько учащихся.

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

Добавить столбец подстановки (отношение "многие к одному")

Чтобы добавить отношение поиска к таблице, создайте связь в разделе Связи и укажите таблицу, с которой нужно создать связь.

  1. В Power Apps на панели навигации слева выберите таблицы. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.

  2. Выберите существующую таблицу или создайте новую таблицу, а затем выберите "Связи".

  3. Выберите "Создать связь" и выберите тип связи, например "Многие к одному".

  4. На правой панели выберите связанную таблицу для текущей таблицы и нажмите кнопку "Готово".

    Пример отношения

  5. Нажмите кнопку Готово.

    Отношение

Добавьте связь "один ко многим"

Чтобы добавить связь "один ко многим", создайте связь в области Связей и укажите таблицу, с которой нужно создать связь.

  1. В Power Apps выберите таблицы в области навигации слева. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.

  2. Выберите существующую таблицу или создайте новую таблицу, а затем выберите "Связи".

  3. Выберите стрелку вниз справа от Добавить связь, а затем выберите Один ко многим.

    Отношение

  4. Выберите таблицу. Обратите внимание, что столбцы поиска будут отображаться в текущей таблице, они по умолчанию будут иметь имя таблицы (в этом примере учитель), но при необходимости их можно изменить. Нажмите кнопку "Готово", чтобы добавить связь в таблицу.

    Замечание

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

    Пример Один ко многим.

  5. Нажмите кнопку Готово.

Добавить связь "многие ко многим"

Чтобы добавить связь «многие ко многим», создайте отношения в области «Связи» и укажите таблицу, с которой хотите установить связь.

  1. В powerapps.com выберите таблицы в области навигации слева. Если этого пункта нет на боковой панели, выберите …Еще, а затем выберите нужный пункт.

  2. Выберите существующую таблицу или создайте новую таблицу

  3. Выберите область "Связи ".

  4. Выберите "Добавить связь " и выберите "Многие ко многим". Откроется панель для выбора таблицы, с которой вы хотите создать связь. Выберите таблицу из раскрывающегося списка "Связанная таблица ".

  5. После выбора таблицы отображаются имена для связи и таблицы связей. По умолчанию имена таблиц объединены, но при необходимости их можно изменить.

    Отношения многие ко многим.

  6. Выберите "Готово ", чтобы добавить связь в таблицу, а затем нажмите кнопку "Сохранить таблицу".

Добавление расширенного поведения связи

При создании связи "один ко многим" или "многие к одному" можно настроить также расширенное поведение.

Расширенное поведение.

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

С другой стороны, вы можете решить, что вы не хотите, чтобы действия были каскадными вниз по иерархии. Например, в отношении учителя и класса можно было бы решить, что дочерняя таблица (класс) не следует быть удалена при удалении родительской (учителя). Это называется ссылочной связью.

При моделировании бизнес-данных путем создания пользовательских таблиц или при использовании существующих таблиц Общей Модели Данных следует учитывать необходимое поведение и последствия для всей иерархии связанных таблиц и выбрать одно из следующих стандартных действий.

  • Ссылочная ссылка, удаление ссылки: В связях между двумя таблицами можно переходить к любым связанным строкам, но действия, выполняемые в одной таблице, не влияют на другую. Например, если у вас есть отношение "один ко многим" между учителями и классами, удаление преподавателя не влияет на связанный класс.

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

    Ссылочное с ограниченным удалением.

  • Родительский: в родительском отношении между двумя таблицами любое действие, выполняемое над записью родительской таблицы, также выполняется над всеми связанными с ней записями дочерних таблиц. Например, владелец родительской записи унаследовал доступ к записям дочерней таблицы, и при удалении родительской записи все дочерние записи также будут удалены.

  • Пользовательский: В настраиваемых отношениях между двумя таблицами вы выбираете поведение, связанное с каждым возможным действием.

    Настраиваемое поведение.

Дополнительные сведения о поведении по умолчанию и пользовательском поведении: Настройка поведения взаимоотношений в таблице.

Использование столбца подстановки в приложении

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

Добавление отношений 1:N и N:N для приложений на основе холста

Используйте функцию "Связь " для связывания двух строк с помощью связи "один ко многим" или "многие ко многим" в Microsoft Dataverse. Дополнительные сведения: Функции связывания и отмены связывания в Power Apps

Дальнейшие шаги